par
misterflo » 27 avr. 2011, 16:54
Salut,
avec PDO les
:variable est un paramètre, ce paramètre attend une valeur lors de l'exécution de la requête.
Comme le signale Mazarini, il faut lire la doc !
http://php.net/manual/fr/book.pdo.php
Sinon juste pour aider dans le cas présent, il faudrait donc soit mettre directement les
$_POST dans la requête mais sans les deux points, néanmoins cette solution
N'EST PAS DU TOUT CONSEILLEE !!!
(De plus il y a une erreur au niveau des guillemet simple dans la requête etc.)
Il faudrait donc utiliser une requête preparé et ensuite
bindValue ou
bindParam pour associer une valeur à un paramètre.
<?php
try
{
$pdo_options[PDO::ATTR_ERRMODE] = PDO::ERRMODE_EXCEPTION;
$bdd = new PDO('mysql:host=localhost;dbname=geolocalisation', 'root', '', $pdo_options);
$req = $bdd->prepare('INSERT INTO client(Civilité,Nom,Prénom,Pseudo) VALUES(:civ, :nom, :prenom, :pseudo)');
$req->bindValue('civ',$_POST['civ'],PDO::PARAM_STR);
$req->bindValue('nom',$_POST['nom'],PDO::PARAM_STR);
$req->bindValue('prenom',$_POST['prenom'],PDO::PARAM_STR);
$req->bindValue('pseudo',$_POST['pseudo'],PDO::PARAM_STR);
$req->execute();
echo 'OK !';
}
catch(Exception $e)
{
die('Erreur : '.$e->getMessage());
}
?>
Salut,
avec PDO les [b]:variable[/b] est un paramètre, ce paramètre attend une valeur lors de l'exécution de la requête.
Comme le signale Mazarini, il faut lire la doc ! [url]http://php.net/manual/fr/book.pdo.php[/url]
Sinon juste pour aider dans le cas présent, il faudrait donc soit mettre directement les [b]$_POST[/b] dans la requête mais sans les deux points, néanmoins cette solution [color=#FF0000]N'EST PAS DU TOUT CONSEILLEE[/color] !!!
(De plus il y a une erreur au niveau des guillemet simple dans la requête etc.)
Il faudrait donc utiliser une requête preparé et ensuite [b]bindValue[/b] ou [b]bindParam[/b] pour associer une valeur à un paramètre.
[php]
<?php
try
{
$pdo_options[PDO::ATTR_ERRMODE] = PDO::ERRMODE_EXCEPTION;
$bdd = new PDO('mysql:host=localhost;dbname=geolocalisation', 'root', '', $pdo_options);
$req = $bdd->prepare('INSERT INTO client(Civilité,Nom,Prénom,Pseudo) VALUES(:civ, :nom, :prenom, :pseudo)');
$req->bindValue('civ',$_POST['civ'],PDO::PARAM_STR);
$req->bindValue('nom',$_POST['nom'],PDO::PARAM_STR);
$req->bindValue('prenom',$_POST['prenom'],PDO::PARAM_STR);
$req->bindValue('pseudo',$_POST['pseudo'],PDO::PARAM_STR);
$req->execute();
echo 'OK !';
}
catch(Exception $e)
{
die('Erreur : '.$e->getMessage());
}
?>
[/php]