Vérifier la clé primaire dans la base!
Résolu
glee89
Messages postés
31
Statut
Membre
-
glee89 Messages postés 31 Statut Membre -
glee89 Messages postés 31 Statut Membre -
S'il vous plait, aidez-moi à palier à ce problème:
Désolé, ce matricule existe déja dans la base!
Warning: mysql_fetch_array(): 5 is not a valid MySQL result resource in C:\Program Files (x86)\EasyPHP-5.3.9\www\Sites\InsertEtudiant.php on line 65
Erreur SQL !INSERT INTO 'etudiant'('matricule', 'nom', 'prenom', 'datenaiss', 'lieunaiss', 'contact') VALUES("5863H","DOH","Joel","1990-09-10","Tabou","05132413")
Aucune base n'a été sélectionnée
Voici le code dont on fait reférence:
Désolé, ce matricule existe déja dans la base!
Warning: mysql_fetch_array(): 5 is not a valid MySQL result resource in C:\Program Files (x86)\EasyPHP-5.3.9\www\Sites\InsertEtudiant.php on line 65
Erreur SQL !INSERT INTO 'etudiant'('matricule', 'nom', 'prenom', 'datenaiss', 'lieunaiss', 'contact') VALUES("5863H","DOH","Joel","1990-09-10","Tabou","05132413")
Aucune base n'a été sélectionnée
Voici le code dont on fait reférence:
<?php
//On se connecte
connectToDB() ;
//On prépare la requête
$sql = 'SELECT * FROM etudiant' ;
// On lance la requête (mysql_query) et on impose un message d'erreur si la requête ne se passe pas (or die)
$req = mysql_query($sql) or die('Erreur SQL !<br />'.$sql.'<br />'.mysql_error()) ;
// Au fait ces lignes nous permettrons de verifier si l'étudiant ajouté
// ne figure pa deja dans la base.
//Boucle
while ($data = mysql_fetch_array($req))
{
$verif = $data['matricule'] ;
if($verif == $matricule)
{
echo'<span style="color:#ff0000;"> Désolé, ce matricule existe déja dans la base! </span>' ;
//On libère la mémoire mobilisée pour cette requête dans sql!
mysql_free_result($req) ;
// On ferme sql
mysql_close() ;
$form = true ;
}
else
{
continue ;
}
}
//On prépare la commande sql d'insertion
$sql = 'INSERT INTO 'etudiant'('matricule', 'nom', 'prenom', 'datenaiss', 'lieunaiss', 'contact') VALUES("'.$matricule.'","'.$nom.'","'.$prenom.'","'.$datenaiss.'","'.$lieunaiss.'","'.$contact.'")' ;
/*on lance la commande (mysql_query) et au cas où,
on rédige un petit message d'erreur si la requête ne passe pas (or die)
(Message qui intègrera les causes d'erreur sql)*/
mysql_query ($sql) or die ('Erreur SQL !'.$sql.'<br />'.mysql_error());
// on ferme la connexion
mysql_close() ;
echo("Insertion reussie!") ;
$form = false ;
?>
A voir également:
- Vérifier la clé primaire dans la base!
- Clé usb non détectée - Guide
- Clé d'activation windows 10 - Guide
- Formater clé usb - Guide
- Clé usb - Accueil - Stockage
- Verifier compatibilite windows 11 - Guide
j'ai eu une ligne de code sur un site qui résolu le problème. et la voici:
$sql = mysql_num_rows(mysql_query('SELECT * FROM etudiant where matricule="'.$matricule.'"')) ;Comme ça je suis dans la table sans que j'utilise une boucle tantque.