1. Gestione degli Errori
Procediamo con la creazione di un Array globale, in cui andremo a mettere la traduzione delle stringhe d'errore MySQL che ci interessano per le nostre applicazioni.
Se avete scaricato la documentazione ufficiale di MySQL, andate all'appendice B.
Più esattamente a "Errors, Error Codes, and Common Problems".
Nei capitoli "B.2. Server Error Codes and Messages" e "B.3. Client Error Codes and Messages" trovate la lista completa degli errori, nel caso in cui non siate soddisfatti e vogliate aggiungerne altri al vostro Array per renderlo più completo.
Di seguito riporto il mio Array con gli errori più comuni e la rispettiva traduzione :
$MySQLErrors = array(); $MySQLErrors[1040] = "Troppe connessioni. Riprova più tardi grazie"; $MySQLErrors[1044] = "Accesso negato. Utente non autorizzato"; $MySQLErrors[1045] = "Accesso negato. Utente non autorizzato"; $MySQLErrors[1046] = "Nessun database è stato selezionato"; $MySQLErrors[1047] = "Comando sconosciuto"; $MySQLErrors[1049] = "Impossibile trovare il database specificato"; $MySQLErrors[1051] = "Impossibile trovare la tabella specificata"; $MySQLErrors[1054] = "Impossibile trovare il campo specificato"; $MySQLErrors[1062] = "Valore già presente"; $MySQLErrors[1064] = "Errore di sintassi"; $MySQLErrors[1065] = "Specificare una query"; $MySQLErrors[1105] = "Sconosciuto"; $MySQLErrors[1146] = "Impossibile trovare la tabella specificata"; $MySQLErrors[2003] = "Impossibile connettersi all'host specificato"; $MySQLErrors[2005] = "Impossibile trovare l'host specificato";
L'indice dell'array corrisponde al valore intero dell'errore in MySQL.
In questo modo, con una semplice funzione, potremo richiamare direttamente la stringa
tradotta, usando la funzione delle librerie standard di PHP "mysql_errno()".
Di seguito la funzione per richiamare gli errori tradotti :
function getMySQLError($errno)
{
global $MySQLErrors;
$errno = intval($errno); // convertiamo in un valore intero per leggere correttamente l'array
if (strlen($MySQLErrors[$errno]))
return $MySQLErrors[$errno];
else
return "Errore imprevisto n." . $errno;
}|
Ora non resta che salvare il nuovo file come MySQLErrors.php. |

