Salve a tutti,
ho dei problemi con questo vecchio codice php. Funzionava perfettamente su un server interno all'azienda. Abbiamo traslocato la web a un hosting linux esterno e non funziona più. La direzione ip che si indica è una direzione ip fissa .
Il codice legge un file con questa struttura e lo invia a un concentratore che lo processa per l' erp.
ho dei problemi con questo vecchio codice php. Funzionava perfettamente su un server interno all'azienda. Abbiamo traslocato la web a un hosting linux esterno e non funziona più. La direzione ip che si indica è una direzione ip fissa .
PHP:
<?php
$fichero = $_SESSION['telex'];
$fichero = "P01web" . $fichero;
$f = fopen($fichero,"r");
$conexion=fsockopen("8x.xxx.xx.xx","5000");
$ped = 0;
// inviamo codice del cliente
$val = fgets($f,30);
fwrite($conexion,"010100000000000000".$val[0].$val[1].$val[2].$val[3].$val[4].$val[5].$val[6]." ".$val[0].$val[1].$val[2].$val[3].$val[4].$val[5].$val[6]." \n");
fwrite($conexion,"1010".$val[0].$val[1].$val[2].$val[3].$val[4].$val[5].$val[6]." \n"); // no se procesa
$val = fgets( $f, 30);
$ped = 0;
// inviamo codice articoli e quantità
while(!feof($f)){
$ped = $ped +1 ;
$pal2 = split("\?",$val);
if(strlen($pal2[1]) == 0) $pal2[1] = "0001"; // se è zero lo cambia a 1. Ordine minimo
if(strlen($pal2[1]) == 1) $pal2[1] = "000".$pal2[1];
if(strlen($pal2[1]) == 2) $pal2[1] = "00".$pal2[1];
if(strlen($pal2[1]) == 3) $pal2[1] = "0".$pal2[1];
fwrite($conexion,"1020000000".$pal2[0]."0".$pal2[1]."\n");
$val = fgets( $f, 30);
}
fwrite($conexion,"10500000000000000000\n");
fwrite($conexion,"0199\n");
set_time_limit(50);
sleep(4);
fclose($f);
// Restituisce un messaggio se l'articolo non è disponibile
$val = fread($conexion,44);
$val = fread($conexion,74);
$comp = substr($val,0,4);
//fclose($conexion);
if(strcmp($comp,"2010") == 0){
$fin = 1;
while($fin == 1){
$val = fread($conexion,4);
if(strcmp($val,"0199") == 0){
$fin = 0;
}
if(strcmp($val,"2011") == 0){
$val = fread($conexion,52);
}
if(strcmp($val,"2015") == 0){
$val = fread($conexion,46);
$articulo = substr($val,6,6);
$cpedida = substr($val,14,3);
$cservida = substr($val,14,3) - substr($val,18,3);
$incidencia = substr($val,29,2);
if(strcmp($incidencia,"36") == 0) $incidencia = "Stock insufficiente";
if(strcmp($incidencia,"01") == 0) $incidencia ="Esaurito";
if(strcmp($incidencia,"11") == 0) $incidencia ="Fuori Catalogo";
if(strcmp($incidencia,"04") == 0) $incidencia ="Codice sconosciuto";
if(strcmp($incidencia,"10") == 0) $incidencia ="Non invia il fabbricante";
if(strcmp($incidencia,"00") != 0 ){
?>
<tr>
<td><?php echo $articulo; ?></td>
<td><?php echo $cpedida; ?></td>
<td><?php echo $cservida; ?></td>
<td><?php echo $incidencia; ?></td>
</tr>
<?php
}
$val = "";
$articulo = "";
$cpedida = "";
$cservida ="";
$incidencia = "";
}
}
}else {
echo "Non siamo stati in grado di verficare lo stock disponibile. Ci scusiamo per il disagio.";
}
fclose($conexion);
?>
Il codice legge un file con questa struttura e lo invia a un concentratore che lo processa per l' erp.
Codice:
9901585??
000018?3?
000019?2?