Requête mysql insert into avec une condition
trucmuche221
Messages postés
1
Date d'inscription
Statut
Membre
Dernière intervention
-
Chinchero -
Chinchero -
Bonjour,
Je travaille actuellement sur un site internet relié à une base de donnée hébergée sur MySql.
Sur ce site des élèves peuvent s'inscrire. Pour cela ils doivent renseigner différents champs dont celui de leur lycée d'origine ainsi que le code postal et la ville du lycée.
Dans ma base de données j'ai une table "eleves" et une table "lycee". La table lycee contient les 3 champs mentionnaient ci dessous (Nom_Lyc, CP_Lyc et Ville_Lyc), elle contient aussi Num_Lyc qui est la clef primaire de cette table. La table ancien est relié à la table lycee par le champ Num_Lyc qui est une clef étrangère.
Je voudrais, lorsque un élève s'inscrit sur le site ajouter les élèments du lycée (son nom, son code postal et sa ville) dans la table lycee si ce lycée n'existe pas dans la table. Et dans tout les cas relier les deux Num_Lyc.
J'ai essayé en faisant cette requête:
$query="insert into LYCEE(Nom_Lyc, CP_Lyc, Ville_Lyc) VALUES( '".$Lyc."', '".$CPLyc."', '".$VLyc."') WHERE '".$Lyc."'<>Nom_Lyc AND '".$CPLyc."'<>CP_Lyc AND '".$VLyc."'<>Ville_Lyc;";
($Lyc, $CPLyc et $VLyc sont les valeurs saisies par l'élèves et récupérées dans un formulaire).
Merci beaucoup de votre aide!
Je travaille actuellement sur un site internet relié à une base de donnée hébergée sur MySql.
Sur ce site des élèves peuvent s'inscrire. Pour cela ils doivent renseigner différents champs dont celui de leur lycée d'origine ainsi que le code postal et la ville du lycée.
Dans ma base de données j'ai une table "eleves" et une table "lycee". La table lycee contient les 3 champs mentionnaient ci dessous (Nom_Lyc, CP_Lyc et Ville_Lyc), elle contient aussi Num_Lyc qui est la clef primaire de cette table. La table ancien est relié à la table lycee par le champ Num_Lyc qui est une clef étrangère.
Je voudrais, lorsque un élève s'inscrit sur le site ajouter les élèments du lycée (son nom, son code postal et sa ville) dans la table lycee si ce lycée n'existe pas dans la table. Et dans tout les cas relier les deux Num_Lyc.
J'ai essayé en faisant cette requête:
$query="insert into LYCEE(Nom_Lyc, CP_Lyc, Ville_Lyc) VALUES( '".$Lyc."', '".$CPLyc."', '".$VLyc."') WHERE '".$Lyc."'<>Nom_Lyc AND '".$CPLyc."'<>CP_Lyc AND '".$VLyc."'<>Ville_Lyc;";
($Lyc, $CPLyc et $VLyc sont les valeurs saisies par l'élèves et récupérées dans un formulaire).
Merci beaucoup de votre aide!
A voir également:
- Requête mysql insert into avec une condition
- Excel cellule couleur si condition texte - Guide
- Touche insert - Guide
- Disk boot failure insert system disk and press enter - Guide
- Mysql community server - Télécharger - Bases de données
- Accéder à la fonction secondaire "insert" de ma touche "Delete" - Forum PC portable
2 réponses
Bonjour,
Il faut le faire en deux étapes :
- vérifier si le lycée existe ;
- si non, l'ajouter.
Xavier
Il faut le faire en deux étapes :
- vérifier si le lycée existe ;
- si non, l'ajouter.
$requete_existe = "SELECT count(*) FROM LYCEE WHERE Nom_Lyc = '$Lyc' AND CP_Lyc = '$CPLyc' AND Ville_Lyc = '$VLyc'"; $resultat_existe = mysql_query($requete_existe); $ligne_existe = mysql_fetch_array($resultat_existe); $existe = ($ligne_existe[0] != 0); if (!$existe) { $query="insert into LYCEE(Nom_Lyc, CP_Lyc, Ville_Lyc) VALUES( '$Lyc', '$CPLyc', '$VLyc')"; mysql_query($query); }
Xavier
Chinchero
Ca fonctionne, merci beaucoup!!!
bonjour,
je comprend votre demande mais ce qui m'intrigue c'est est ce que avec votre rêquete sa marche ou pas ? est si non,indiquer le message d'erreur avec l'enregistrement dans votre base.je comprend pas trés bien votre INSERT, voila ce que je ferrais.
<?php
// je récupère les données du formulaires
$Nom_Lyc = $_POST['Nom_Lyc'] ;
$CP_Lyc = $_POST['$CP_Lyc'] ;
$Ville_Lyc = $_POST['$Ville_Lyc'] ;
puis ma requete sql :
INSERT INTO lycée VALUES ('$Nom_Lyc','$CP_Ly','$Ville_Lyc ') ;
?>
voila
Signature non conforme - Publicité supprimée Modération CCM
je comprend votre demande mais ce qui m'intrigue c'est est ce que avec votre rêquete sa marche ou pas ? est si non,indiquer le message d'erreur avec l'enregistrement dans votre base.je comprend pas trés bien votre INSERT, voila ce que je ferrais.
<?php
// je récupère les données du formulaires
$Nom_Lyc = $_POST['Nom_Lyc'] ;
$CP_Lyc = $_POST['$CP_Lyc'] ;
$Ville_Lyc = $_POST['$Ville_Lyc'] ;
puis ma requete sql :
INSERT INTO lycée VALUES ('$Nom_Lyc','$CP_Ly','$Ville_Lyc ') ;
?>
voila
Signature non conforme - Publicité supprimée Modération CCM