SOLUZIONE:
quel '1'..in realtà non è nella query, ma nella funzione, che se vede che $var non esiste

codice:
if(!$var[$replace]){$erroreint=1;}
essendo la variabile settata a zero è come se non esistesse e quindi la funzione da errore, se io aggiungo alla verifica che non deve esistere e non deve essere = 0

codice:
if(!$var[$replace] & $var[$replace]!=0){$erroreint=1;}
a questo punto funziona correttamente!era solo una questione che zero numerico lo vede come se fosse nullo il valore!



se qualcuno vuole migliorare la funzione..io resto a disposizione.grazie ancora a tutti per l'aiuto nelle verifiche.