Vous n'êtes pas identifié(e).
Pages : 1
Donc voila :
foreach($arr as $elem)
$arrPH[] = '?';
$strPH = implode(',', $arrPH); //Contient: ?,?,?,?,?
$sql = "UPDATE messagerie SET visible=visible-2 WHERE id_msg IN($strPH)";
$sth = $dbh->prepare($sql);
//Associer les valeurs aux place holders
for($i=0;$i<count($arr);$i++)
$sth->bindValue($i+1, $arr[$i], PDO::PARAM_STR);
$sth->execute();
Merci
Bonjour,
Je souhaite effectuer une requête préparée de ce type :
Je suis arrivé à ce genre de code, cela me supprime que la première valeur.
//ou
$pdo[':del'] = str_replace( '|', ',', $_GET['del']); // pdo[':del'] = 1,2,3,4,5
$sql = "UPDATE messagerie SET visible=visible-2 WHERE id_msg IN(:del)";
$sth = $dbh->prepare($sql);
$sth->execute($pdo);
unset( $pdo[':del'] );
Merci pour votre aide
Ou est ce que tu teste le mot de passe ?
Tu vérifie juste que le mot de passe ne soit pas une chaine vide.
Ne pas oublier addslashes si les magicquotes ne sont pas activées.
Je me rend compte que je ne connaissais pas le try/catch ainsi que pdo. Va falloir que je me mette à jour...
Sinon je ferai comme ça :
try {
$pdo_options[PDO::ATTR_ERRMODE] = PDO::ERRMODE_EXCEPTION;
$bdd = new PDO('mysql:host=mysql51-57.perso;dbname=', '', '', $pdo_options);
$reponse = $bdd->query('SELECT id FROM textealeatoire WHERE id != "'.$_SESSION['id'].'" ORDER BY rand() LIMIT 1,1');
if (isset($_SESSION['id']))
$_SESSION['id'] = array();
$i = 0; //Valeur de la clé
while ($donnees = $reponse->fetch()) {
$_SESSION['id'][$i++] = $donnees['id'];
echo $donnees['id'];
}
$reponse->closeCursor();
}
catch(Exception $e) {
die('Erreur : '.$e->getMessage());
}
?>
Bonjour,
SELECT *, id
Pas bien !
Bonjour,
Il vaut mieux poster sur le forum d'easyphp qui sera peut être plus adapté pour t'apporter une réponse.
Je ne saurais t'aider, cela fait des années que j'ai remplacé easyphp par wampserver...
Pages : 1