Where clause
Résolu
ir_1997
Messages postés
102
Statut
Membre
-
jordane45 Messages postés 30426 Date d'inscription Statut Modérateur Dernière intervention -
jordane45 Messages postés 30426 Date d'inscription Statut Modérateur Dernière intervention -
salut tous le monde enfaîte j'aimerai faire un where clause avec un formulaire la je sais pas c'est quoi le soucie .......
merci d'avance
merci d'avance
<?php if(isset($_POST['formvosart'])) {
$idm = htmlspecialchars($_POST['idm']);
$requser = $bdd->prepare('SELECT * FROM articles WHERE idm = ?');
$requser->execute(array($idm));
$vospost = $requser->fetch();
?>
<?php
echo $idm['pseudo'];
echo $idm['article'];
echo $idm['prix'];
?>
<?php } ?>
<html>
<head>
<title>TUTO PHP</title>
<meta charset="utf-8">
</head>
<body>
<form method="get" action="">
<input type="text" name="idm" >
<input type="submit" name="vosart" >
</form>
</body>
</html>
4 réponses
-
Pourquoi ru utilises htmlspecialchars ?
$idm = htmlspecialchars($_POST['idm']);
Si c'est pour exclure les caratères non désirés, ce n'est pas somme ça qu'il faut faire et dans le cas d'une requête préparée, c'est inutile.
-
yg_be Messages postés 23437 Date d'inscription Statut Contributeur Dernière intervention Ambassadeur 1 588
bonjour, quel est le symptôme?
à toi de nous décrire le soucis, nous pourrons ensuite t'aider à en découvrir la source. -
Bonjour
Pour tes écho.. il faut utiliser ta variable $vospost et non pas $idm
-
Déjà, active l'affichage des erreurs PHP ainsi que l'affichage des erreurs PDO
(et place CHAQUE requête dans un bloc TRY / CATCH)
Comme expliqué ici :
https://forums.commentcamarche.net/forum/affich-37584941-php-pdo-gerer-les-erreurs
Ensuite, applique les conseils donnés ici : https://forums.commentcamarche.net/forum/affich-37584947-php-gestion-des-erreurs-debogage-et-ecriture-du-code
Ce, au niveau du bout de code que tu nous montres, ça devrait donner<?php //affichage des erreurs PHP error_reporting(E_ALL); ini_set('display_errors', TRUE); ini_set('display_startup_errors', TRUE); //connexion à la bdd // // ... ton code de connexion avec activation des erreurs PDO //..... //..... //la suite de ton code : //récupération PROPRE des variables AVANT de les utiliser : $idm = !empty($_POST['idm']) ? $_POST['idm'] : NULL; //traitemetn du formulaire if(isset($_POST['vosart'])) { //préparation de la requête et des variables $sql = "SELECT * FROM articles WHERE idm = ?"; $datas = array($idm); //Execution de la requete try{ $requete = $bdd -> prepare($sql) ; $requete->execute($datas) ; $vospost = $requete->fetch(); }catch(Exception $e){ // en cas d'erreur : echo " Erreur ! ".$e->getMessage(); echo " Les datas : " ; print_r($datas); } if(!empty($vospost)){ echo $vospost['pseudo']; echo $vospost['article']; echo $vospost['prix']; } } ?> <html> <head> <title>TUTO PHP</title> <meta charset="utf-8"> </head> <body> <form method="post" action=""> <input type="text" name="idm" > <input type="submit" name="vosart" > </form> </body> </html>