Error : Invalid Query Champ 'Desert' inconnu dans where clause

[Résolu/Fermé]
Signaler
Messages postés
2
Date d'inscription
mercredi 26 avril 2017
Statut
Membre
Dernière intervention
26 avril 2017
-
Messages postés
32771
Date d'inscription
mercredi 2 mai 2007
Statut
Modérateur
Dernière intervention
27 septembre 2021
-
Bonjour,

Je débute en PHP et j'ai une erreur même après avoir chercher sur internet et essayé plusieurs solution ça ne marche pas.

Mon problème :
Je fais appelle à une requête pour pouvoir ajouter une ligne dans ma base de données cependant cela ne fonctionne pas et ma page web m'affiche :
Error : Invalid Query Champ 'Desert' inconnu dans where clause

Mon code PHP :

<?php

$ConnexionBD = mysqli_connect("localhost", "root", Null, "site_internet") ;

if (mysqli_connect_errno()) {
echo "Connection to the Data Base Server not Possible : " . mysqli_connect_error();
return;
}

$Nom = htmlentities($_POST['nom'], ENT_QUOTES);
$Prenom = htmlentities($_POST['prenom'], ENT_QUOTES);
$Email = htmlentities($_POST['email'], ENT_QUOTES);
$Commentaire = htmlentities($_POST['commentaire'], ENT_QUOTES);
$Note = htmlentities($_POST['note'], ENT_QUOTES);
$Trek = htmlentities($_POST['trek'], ENT_QUOTES);


$RequeteAjout="INSERT INTO commentaire (Prenom, Nom, Email, Commentaire, note, IdTrek)
VALUES('$Prenom','$Nom','$Email','$Commentaire','$Note',(SELECT `IdTrek`
FROM `trek`
WHERE NomTrek =".$Trek."))";

$Resultat = mysqli_query($ConnexionBD, $RequeteAjout);

if (!$Resultat) {
echo("Error : Invalid Query " .mysqli_error($ConnexionBD));
return;

} else {
echo " Yes !!!! your inputted data are now stored in database";
mysqli_close($ConnexionBD);
}
?>


Je pense que ça viens du where NomTrek =".$Trek." mais je n'arrive pas à solutionner le problème.

Merci d'avance pour l'aide.

1 réponse

Messages postés
32771
Date d'inscription
mercredi 2 mai 2007
Statut
Modérateur
Dernière intervention
27 septembre 2021
7 979
Bonjour,

Je n'utilise ni php, ni mysql, j'aurais donc une observation juste de logique sur la forme :

Pourquoi des doubles quotes et des points ".$Trek." alors que pour une donnée qui semble de même type simple quote et pas de points '$Nom'

et tant que l'on est sur la forme pourquoi des quotes inversés sur `IdTrek` et `trek` alors que sur l'update le nom de table et les champs ne sont pas encadrés car ce caractère

cdlt
1
Merci

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

CCM 42674 internautes nous ont dit merci ce mois-ci

Messages postés
2
Date d'inscription
mercredi 26 avril 2017
Statut
Membre
Dernière intervention
26 avril 2017

Tu avais sur le ".$Trek." J'avais vu ça sur un autre forum. Et miracle maintenant ça marche !! hourra ;)
Pour les quotes inversés cela n'a pas d'importance c'est phpmyadmin qui les utilise ainsi.

Merci beaucoup en tout cas tu viens de m'enlever une épine du pied!
Messages postés
32771
Date d'inscription
mercredi 2 mai 2007
Statut
Modérateur
Dernière intervention
27 septembre 2021
7 979 >
Messages postés
2
Date d'inscription
mercredi 26 avril 2017
Statut
Membre
Dernière intervention
26 avril 2017

En informatique, la syntaxe et la forme c'est primordial ;-)

Et la logique aussi.