Errori PDO: HY093 analizziamo come risolverlo

Continua la nostra rubrica appunti digitali, oggi vediamo come risolvere (e da cosa è causato) l’errore HY093 di PDO in pochi semplici passi.

L’errore si presenta il più delle volte con questa forma: PDOStatement::errorInfo(): Array ( [0] => HY093 [1] => [2] => ).

Il codice di errore HY093 viene generato quando viene bindata una variabile inesistente, non dichiarata, o comunque incorretta.

Ecco un esempio pratico:

$query = $this->PDO->prepare('INSERT INTO nazioni (id_nazione, descrizione_nazione) VALUES ( :id_nazione, :nazione_descrizione)');
$query->bindValue( ':id_nazione',  1);
$query->bindValue( ':descrizione_nazione', 'W targetweb');

Come potete vedere “nazione_descrizione” viene passato alla query ma in realtà avete bindato erroneamente “descrizione_nazione” nei bindValue, questo genera l’errore.

Come visualizzare un report degli errori nelle query con PDO

Ricordo che per visualizzare gli errori PDO dovete usare la seguente sintassi subito dopo l’execute della query:

echo "\nPDOStatement::errorInfo():\n";
$arr = $q->errorInfo();
print_r($arr);

Se volete maggiori info per la gestione degli errori PDO vi invito a consultare la reference guide ufficiale. 

Se non sai cosa sia PDO ti invito a leggere la nostra area tematica dedicata!

L’articolo ti è stato utile? condividilo qui sotto con i tuoi amici/colleghi!

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *

Questo sito usa Akismet per ridurre lo spam. Scopri come i tuoi dati vengono elaborati.

Up Next:

Design UI in psd per siti web minimali

Design UI in psd per siti web minimali