Gestion des erreurs MySQL
crackers Membre non connecté
Booster Fronde
-
Booster Fronde
- Voir le profil du membre crackers
- Inscrit le : 13/10/2008
Le problème auquel je suis confronté est simple, j'ai besoin de gérer les erreurs MySQL pour traiter les doublons (Duplicate).
Voici mon code d'origine :
$db = mysql_connect('localhost','root','') or die ('erreur de connexion');
mysql_select_db('rcdb',$db);
$sql = "INSERT INTO `phpboost_pronos_jeux` (...blablabla);
$req = mysql_query($sql) ;
$message = mysql_error($db);
$substr = substr($message, 0, 9);
if ($substr == "Duplicate"){... blablabla
L'ingégration dans PHPBoost me permet de déléguer la connection via le module mysql.class.php
//Connexion
function sql_connect($sql_host, $sql_login, $sql_pass)
{
return mysql_connect($sql_host, $sql_login, $sql_pass);
}
Je voudrais savoir, comment dans ces conditions puis-je trapper les erreurs sur les INSERT (et les erreurs d'une façon générale ???
J'espère avoir été clair...
PS : Je n'ai pas trouvé d'infos sur le forum
Édité par crackers Le 05/12/2008 à 17h26
ben.popeye Membre non connecté
-
Modérateur
- Voir le profil du membre ben.popeye
- Inscrit le : 04/08/2005
- Site internet
- Groupes :
-
Equipe Historique
Il va falloir utiliser l'objet
$Sql qui va permettre d'effectuer les requêtes dans la base de données. Son fonctionnement est très similaire aux fonctions de MySQL sauf qu'elles sont encapsulées.Le mieux est de regarder son fonctionnement dans les fichiers de PHPBoost, c'est assez simple.
Par contre, pour récupérer les erreurs, ça ne sera pas possible simplement, à moins de passer par les fonctions de PHP et pas par celles de PHPBoost.
Un problème, une question ? Cherchez dans la FAQ ou la documentation. Si vous ne trouvez pas la réponse, demandez du support sur le forum.
Bjarne Stroustrup, inventeur du C++ :"There are two ways to write error-free programs; only the third works."
crackers Membre non connecté
Booster Fronde
-
Booster Fronde
- Voir le profil du membre crackers
- Inscrit le : 13/10/2008
$message = mysql_error(); au lieu de $message = mysql_error($db);
De cette façon je récupère la dernière erreur MySQL et je suis content !!
Édité par crackers Le 07/12/2008 à 15h49
Répondre
Vous n'êtes pas autorisé à écrire dans cette catégorie