2009-02-04 5 views
1

J'ai un site Web qui est MySQL/PHP. Je ne peux pas me connecter en raison demessage d'erreur plus convivial pour mysql 'max_user_connections'

Warning: mysql_connect() [function.mysql-connect]: 
User foo has already more than 'max_user_connections' active connections in /home/foo/public_html/utilities.php 

J'utilise un service d'hébergement Web discount et je ne peux pas vraiment l'empêcher de se produire de temps en temps. (Au moins je ne pense pas que je peux.) Comment puis-je donner à l'utilisateur un message plus convivial que celui cryptique?

Répondre

0

Pear MDB2

J'utiliser Pear MD2B, meilleur message d'erreur, une bonne couche entre votre code et la base de données aussi.

Il y a beaucoup plus d'avantages aussi. Il est assez facile de changer votre code existant.

3

Si vous désactivez l'affichage des erreurs (que vous devriez probablement faire en production de toute façon), vous pouvez alors imprimer votre propre erreur si la tentative de connexion échoue.

ini_set('display_errors', false); 
if (!$link = mysql_connect($host, $user, $pass)) { 
    die('could not connect...'); 
} 

Si vous ne pouvez pas modifier le paramètre ini, vous pouvez supprimer l'avertissement avec @

if (!$link = @mysql_connect($host, $user, $pass)) { 
    die('could not connect...'); 
} 

Si vous supprimez l'avertissement, vous ne serez pas en mesure de voir pourquoi la connexion a échoué, ce qui peut ou peut ne pas être ce que vous voulez. Cependant, vous pourriez plutôt enregistrer les erreurs.

Questions connexes