Passer une variable string à une requête
bonsoir à toutes et tous
Je veux récupérer la variable (un pseudo) d'un formulaire et le transmettre à une requête Mysql soit stockée soit directement je n'arrive pas à transmettre cette variable
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13
|
include("/ConnexionBaseBridgez.php");
$connexion=connexionBaseBridgez();
//récupération du pseudo
$pseudo = $_POST['pseudo'];
echo '$pseudo = '.$pseudo. '   ';
var_dump($pseudo);
echo'<br>';
//protection de la variable string donné par l'utilisateur par la méthode PDO::quote()
$pseudo_lit = $connexion->quote($_POST['pseudo']);
echo ' $pseudo_lit = ' . $pseudo_lit.'   ';
var_dump($pseudo_lit);
echo'<br/>'; |
apparemment des variables string toutes les deux, seule $pseudo_lit fonctionne dans la requête suivante mais avec $pseudo
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13
|
$sql = "SELECT pl.id, pl.pseudo
FROM players AS pl
WHERE pl.pseudo = ".$pseudo;
/////////pour voir le résultat//////////
$rep=$connexion->query($sql);
if (!$rep) {
die('Requête invalide : ') ;
}
while ($donnees = $rep->fetch()){
echo ' id_player '.$donnees['id'].'<br/> pseudo '.$donnees['pseudo'].'<br/> ';
} |
malheureusement l'utilisation de $pseudo me renvoi une erreur (avec "lear" comme pseudo envoyé par le formulaire)
Citation:
Fatal error: Uncaught exception 'PDOException' with message 'SQLSTATE[42S22]: Column not found: 1054 Unknown column 'lear' in 'where clause'' in
MAIS Lorsque je fait cette autre requête avec $pseudo_lit ça fonctionne correctement
Code:
1 2 3
| $sql = "SELECT pl.id, pl.pseudo
FROM players AS pl
WHERE pl.pseudo = ".$pseudo_lit; |
SI quelqu'un peut m'éclairer merci d'avance