Mysql
 sql >> Database >  >> RDS >> Mysql

I tipi bind_param dell'istruzione preparata da MYSQLI non funzionano

$stmt->bind_param() non controlla le variabili fornite per un certo tipo, le converte solo nel tipo specificato. E la tua stringa 'aaaaaaa' viene convertita in un valore int:0. È così che lo fa php.

L'istruzione di inserimento del database è il posto sbagliato da controllare, se le tue variabili contengono valori utili/corretti. Fallo prima e prova a inserirli solo se le tue convalide funzionano.

Per eseguire la convalida per un int, puoi usare la funzione php is_numeric() o is_int().