Bonjour,
Afin d'éviter un double enregistrement de membre (email déjà enregistré), j'utilise la portion de code ci-dessous découverte dans un tuto, sauf que j'obtiens l'erreur indiquée sur le titre et la zone de code concernée est :
if(23000==$erreur[0]) // Le code d'erreur "23000" signifie "doublon" dans le standard ANSI SQL
{
preg_match("#Duplicate entry '(.+)' for key \d+#is", $erreur[2], $valeur_probleme);
$valeur_probleme = $valeur_probleme[1];
Le message d'erreur : Notice: Undefined offset: 1 in C:\wamp\www\monsite\modules\membres\inscription.php on line 161
Merci d'avance de votre aide
Modifié par ghisbass (24 Jun 2014 - 13:41)
Afin d'éviter un double enregistrement de membre (email déjà enregistré), j'utilise la portion de code ci-dessous découverte dans un tuto, sauf que j'obtiens l'erreur indiquée sur le titre et la zone de code concernée est :
if(23000==$erreur[0]) // Le code d'erreur "23000" signifie "doublon" dans le standard ANSI SQL
{
preg_match("#Duplicate entry '(.+)' for key \d+#is", $erreur[2], $valeur_probleme);
$valeur_probleme = $valeur_probleme[1];
if(ctype_digit($id_membre))
{
$id_membre = (int)$id_membre;
/* blablablabla... */
}
//Gestion des doublons
else
{
// Changement de variable pour une variable plus lisible
$erreur =& $id_membre;
//On vérifie que l'erreur concerne bien un doublon
if(23000==$erreur[0]) // Le code d'erreur "23000" signifie "doublon" dans le standard ANSI SQL
{
preg_match("#Duplicate entry '(.+)' for key \d+#is", $erreur[2], $valeur_probleme);
$valeur_probleme = $valeur_probleme[1];
if($email==$valeur_probleme)
{
$erreurs_inscription[]="Vous vous êtes déjà inscrit !";
}
else
{
$erreurs_inscription[]="Erreur ajout SQL : doublon non identifié présent dans la base de données";
}
}
else
{
$erreurs_inscription[]=sprintf("Erreur ajout SQL : cas non traité (SQLSTATE : %d)",$erreur[0]);
}
}
Le message d'erreur : Notice: Undefined offset: 1 in C:\wamp\www\monsite\modules\membres\inscription.php on line 161
Merci d'avance de votre aide
Modifié par ghisbass (24 Jun 2014 - 13:41)