Salve a tutti,

sono costretto a chiedere aiuto sul forum per risolvere questa stranezza.
Codice PHP:

$query  
"SELECT * FROM magazzino WHERE codart = '".$_GET['codart']."'";
    
$result2 mysql_query($query) or die('Error, query failedd');
            
    while(
$rowart mysql_fetch_array($result2)) { 
            
$art_nserie$rowart['sernum'] ;
            
$item2add=  unisci_sn($art_nserie);  
            
$totsn array_merge($totsn,$item2add);   //si uniscono poi tutti gli array restituiti per ottenere tutti i serialnumber dentro un unico array

    
};
    
if (!isset(
$_SESSION['totsn']) ) {$_SESSION['totsn'] = $totsn;};

$xx in_array($_GET['sn'],$_SESSION['totsn']);

print 
$xx."
"
;

if (
$xx == true) { echo "true"; } else { echo "false"; } 
Lo script unisce tutti i serial number di ogni articolo trovato in un unico array , dopo di che la funzione in_array(), mi dovrebbe trovare il seriale passato tramite GET (es. ?codart=C3456A&sn=B573065&oper=chksn)

il bello è che questo script funziona l'ho usato anche su un altra pagina e funziona regolarmente, non capisco perche in questo caso mi TROVA SOLO IL PRIMO RECORD

Codice PHP:
function unisci_sn($nserie)
{
    
$arr_sn=explode("\r" ,$nserie);
    
$sn = array();
    
$lung count($arr_sn);
    
            for (
$cont=0$cont $lung$cont++) {
            
                if (
strlen($arr_sn[$cont])==0){unset($arr_sn[$cont]); } else { array_push($sn$arr_sn[$cont]);}
                
    }    
    return 
$sn;

}; 
SESSION_totsn:
Array ( [0] => B573065 [1] => B466825 [2] => B150156 [3] => B107866)

se provo cercare B466825 , B150156 , B107866 in_array è FALSE

se invece cerco B573065 in_array è TRUE
qualcuno mi puo aiutare a risolvere ??

GRAZIE A TUTTI
SAT