Aucune erreur mais ça ne marche pas! je ne comprend pas :(
Résolu
Nouvelle_Informaticienne
Messages postés
153
Date d'inscription
Statut
Membre
Dernière intervention
-
Nouvelle_Informaticienne Messages postés 153 Date d'inscription Statut Membre Dernière intervention -
Nouvelle_Informaticienne Messages postés 153 Date d'inscription Statut Membre Dernière intervention -
A voir également:
- Aucune erreur mais ça ne marche pas! je ne comprend pas :(
- Erreur 0x80070643 - Accueil - Windows
- Erreur 0x80070643 Windows 10 : comment résoudre le problème de la mise à jour KB5001716 - Accueil - Windows
- J'aime par erreur facebook notification - Forum Facebook
- Java code erreur 1603 ✓ - Forum Windows
- Code erreur f3500-31 ✓ - Forum Bbox Bouygues
3 réponses
les donnees sont :y y y yy
avant execution requette!!
La requete est : INSERT INTO intervenant (nom_intervenant,prenom_intervenant,fonction_intervenant,type_intervenant)VALUES('y','y','y','yy')apres execution requette!!
L insertion a ete correctement effectuee
je vous remercie
Essayes ça :
<?php //Fichier : cnxBDD.php //Connexion à la BDD : $host = "localhost"; $user = "root"; $password = ""; $database = "pst"; $db = mysqli_connect($host, $user, $password, $database); /* Vérification de la connexion */ if (!$db) { printf("Echec de la connexion : %s\n", mysqli_connect_error()); exit(); } ?>
<?php //Affichage des erreurs PHO error_reporting(E_ALL); //connexion à la BDD require_once "cnxBDD.php"; //récupération "propre" des valeurs des champs: //Acronyme du projet $nom = isset($_POST["nom"]) ? $_POST["nom"] : NULL ; $prenom = isset($_POST["prenom"]) ? $_POST["prenom"]: NULL ; $fonction = isset($_POST["fonction"]) ? $_POST["fonction"] : NULL ; $typeinter = isset($_POST["typeinter"]) ? $_POST["typeinter"] : NULL ; echo'<br><br><br><br><br><br>'; echo'<div>'; echo'<br>'; echo'<br>'; echo "les donnees sont :".$nom.' '.$prenom.' '.$fonction.' '.$typeinter.' '; //création de la requête SQL: $sql = "INSERT INTO intervenant (nom_intervenant,prenom_intervenant,fonction_intervenant,type_intervenant) VALUES('$nom','$prenom','$fonction','$typeinter')"; echo"avant execution requette!!"; //exécution de la requête SQL: $requete = mysqli_query($cnx,$sql) or die(mysqli_error($cnx) ) ; echo"apres execution requette!!"; //affichage des résultats, pour savoir si l'insertion a marchée: if( $requete) { echo("<br> L insertion a ete correctement effectuee<br>") ; echo'<br>'; } else { echo("L'insertion à échouée") ; echo'<br>'; } echo'</div>'; ?>
Je vous remercie d'abord , en suite meme si j'ai essayé le nouveau code il m'affiche meme page :
"les donnees sont :a a a avant execution requette!!"
il m affiche pas "apres execution de la requete " donc je crois il se bloque au niveau de la requete !! je ne sais pas depuis le matin j essai mais je ne trouve pas la source de l'erreur pour la corriger ! merci encore une fois
"les donnees sont :a a a avant execution requette!!"
il m affiche pas "apres execution de la requete " donc je crois il se bloque au niveau de la requete !! je ne sais pas depuis le matin j essai mais je ne trouve pas la source de l'erreur pour la corriger ! merci encore une fois
Commence par faire un ECHO de la requête
Puis testes la DIRECTEMENT dans ta BDD (via phpmyadmin par exemple).
Cela te permettra de savoir si le souci se situe au niveau de la requête ou non.
Ensuite, je viens de le voir ... si tu as utilisé mon code de connexion à la BDD .. j'ai mis la connexion dans $db ....
Sauf que dans les requêtes ... il y a $cnx ...
Donc remplace les $cnx par $db
$sql = "INSERT INTO intervenant (nom_intervenant,prenom_intervenant,fonction_intervenant,type_intervenant) VALUES('$nom','$prenom','$fonction','$typeinter')"; echo "<br> La requete est : ".$sql; echo"avant execution requette!!";
Puis testes la DIRECTEMENT dans ta BDD (via phpmyadmin par exemple).
Cela te permettra de savoir si le souci se situe au niveau de la requête ou non.
Ensuite, je viens de le voir ... si tu as utilisé mon code de connexion à la BDD .. j'ai mis la connexion dans $db ....
Sauf que dans les requêtes ... il y a $cnx ...
$requete = mysqli_query($cnx,$sql) or die(mysqli_error($cnx) ) ;
Donc remplace les $cnx par $db
Rien de spécial ????? ?
Alors que ça t'affiche une information IMPORTANTE !!!
En gros ... tu as un champ dans ta table que tu as défini comme devant être UNIQUE ... et tu essayes d'insérer une ligne qui cotient une valeur déjà existante dans ta table !
Voila ton erreur !!
Alors que ça t'affiche une information IMPORTANTE !!!
Duplicate entry '0' for key 'PRIMARY'
En gros ... tu as un champ dans ta table que tu as défini comme devant être UNIQUE ... et tu essayes d'insérer une ligne qui cotient une valeur déjà existante dans ta table !
Voila ton erreur !!
Bonjour,
essaye plutôt de déclarer ta connexion et la sélection de ta base de cette manière suivante.
Lors de la recuperation du formulaire essaye aussi plutôt les simples cotes à la place des doubles
Enfin Pour ton affichage des résultats si ca ne t'affiche rien c'est tout a faire normal car tu fais une condition sur rien du tout. Je m'eplique dans ta condition tu met SI (CONDITION) Alors... au lieu de SI (CONDITION=VRAI) Alors...
essaye plutôt de déclarer ta connexion et la sélection de ta base de cette manière suivante.
Lors de la recuperation du formulaire essaye aussi plutôt les simples cotes à la place des doubles
Enfin Pour ton affichage des résultats si ca ne t'affiche rien c'est tout a faire normal car tu fais une condition sur rien du tout. Je m'eplique dans ta condition tu met SI (CONDITION) Alors... au lieu de SI (CONDITION=VRAI) Alors...
<?php
//connexion au serveur MySql
$db=mysql_connect("127.0.0.1","id","mdp") or die("erreur de connexion".mysql_error());
//connexion à la base pst
mysql_select_db("pst",$db) or die("erreur de connexion à la base");
?>
//récupération des données à partir du formulaire
$nom=$_POST['nom'];
$prenom=$_POST['prenom'];
$fonction=$_POST['fonction'];
//création de la requête SQL:
$req = "INSERT INTO intervenant (nom_intervenant,prenom_intervenant,fonction_intervenant,type_intervenant)VALUES('$nom','$prenom','$fonction','$typeinter')";
mysql_query($req) or die("erreur insertion ! ".mysql_error());