Problème formulaire et requette
Résolu
ZAZAVEVE
-
Flog78 -
Flog78 -
Bonjour,
1) je suis hyper débutant en PHP
2) je veux récupérer à partir d'un formulaire 2 données ( prixmini et prixmaxi), les mettre dans un programme PHP, et dans ce programme, je veux comparer ces 2 valeurs au contenu d'une entrée (post_notes, INT) dans une table de ma bdd (bdd de dotclear), et j'affiche les donnée extraites du tableau (post_title) . Ma requête ne fonctionne pas. Bon, j'ai l'impression de pas être très clair ( pas très Dot clair haha). je mets le code ci-dessous. Si quelqu'un peut m'aider, ça serait super.
3) voila l'erreur:
Erreur : SQLSTATE[42000]: Syntax error or access violation: 1064 You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '[prixmini] AND post_notes <=$_POST[prixmaxi]' at line 1
4) et le code largement inspiré ( pompé sur) du Site du Zéro
1) je suis hyper débutant en PHP
2) je veux récupérer à partir d'un formulaire 2 données ( prixmini et prixmaxi), les mettre dans un programme PHP, et dans ce programme, je veux comparer ces 2 valeurs au contenu d'une entrée (post_notes, INT) dans une table de ma bdd (bdd de dotclear), et j'affiche les donnée extraites du tableau (post_title) . Ma requête ne fonctionne pas. Bon, j'ai l'impression de pas être très clair ( pas très Dot clair haha). je mets le code ci-dessous. Si quelqu'un peut m'aider, ça serait super.
3) voila l'erreur:
Erreur : SQLSTATE[42000]: Syntax error or access violation: 1064 You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '[prixmini] AND post_notes <=$_POST[prixmaxi]' at line 1
4) et le code largement inspiré ( pompé sur) du Site du Zéro
<?php
try
{
// On se connecte à MySQL
$pdo_options[PDO::ATTR_ERRMODE] = PDO::ERRMODE_EXCEPTION;
$bdd = new PDO('mysql:host=localhost;dbname=maBDDamoi', 'root', '', $pdo_options);
// On récupère tout le contenu de la table dc_post
$reponse = $bdd->query('SELECT * FROM dc_post WHERE post_notes >=$_POST[prixmini] AND post_notes <=$_POST[prixmaxi]');
// On affiche chaque entrée une à une
while ($donnees = $reponse->fetch())
{
?>
<p>
<?php echo $donnees['post_title']; ?><br />
</p>
<?php
}
$reponse->closeCursor(); // Termine le traitement de la requête
}
catch(Exception $e)
{
// En cas d'erreur précédemment, on affiche un message et on arrête tout
die('Erreur : '.$e->getMessage());
}
?>
<p>
Veuillez taper prix mini et prix maxi
</p>
<form action="#" method="post">
<input type="text" name="prixmini" />
<input type="text" name="prixmaxi" />
<input type="submit" value="Valider" />
</form>
A voir également:
- Problème formulaire et requette
- Whatsapp formulaire opposition - Guide
- Formulaire de réclamation facebook compte désactivé - Guide
- Formulaire de reclamation instagram - Guide
- Confirmer le nouvel envoi du formulaire err_cache_miss - Forum Webmastering
- Problème avec Google Chrome - Forum Google Chrome
4 réponses
Complément d'info. Quand je mets des nombres en dur dans ma requête, sans passer par le formulaire, ça fonctionne.
ex:
ex:
$reponse = $bdd->query('SELECT * FROM dc_post WHERE post_notes >=2000 AND post_notes <=12000');
Pour corriger l'erreur il faut écrire :
$reponse = $bdd->query('SELECT * FROM dc_post WHERE post_notes >='.$_POST["prixmini"].' AND post_notes <='.$_POST["prixmaxi"]);
voila deja 1 premiere erreur de corrigée, il y en a peut etre d'autres
EDIT : le point est avant la parenthese et le AND
EDIT : pas de guillement entourant la derniere parenthese
$reponse = $bdd->query('SELECT * FROM dc_post WHERE post_notes >='.$_POST["prixmini"].' AND post_notes <='.$_POST["prixmaxi"]);
voila deja 1 premiere erreur de corrigée, il y en a peut etre d'autres
EDIT : le point est avant la parenthese et le AND
EDIT : pas de guillement entourant la derniere parenthese