Bonjour,

Comment échapper les double quotes avec PDO?

Avec l'exemple de de ma requête préparée ci-dessous si je fais un un update:

c'est mon test cela marche

c'est mon test "mais avec apostrophes" mais il me ne prend que c'est mon test et ne me retourne aucune erreur.

Or j'ai bien:

Code php : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
 
self::$instance->setAttribute(PDO::ATTR_ERRMODE,PDO::ERRMODE_WARNING);

Je suis novice en PDO donc j'aimerai avoir un peu d'aide.
Merci d'avance

Code php : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
 
$i = 0;
while($row = $sql_lg->fetch()){
    $sql = DbConnect::getInstance()->prepare("UPDATE pic_lang SET title=:title,alt=:alt WHERE id_pic=:id AND lang=:lang");
    $sql->bindParam(':title',$_POST['title'][$i],PDO::PARAM_STR);
    $sql->bindParam(':alt',$_POST['alt'][$i],PDO::PARAM_STR);
    $sql->bindParam(':id',$_GET['id_pic'],PDO::PARAM_INT);
    $sql->bindParam(':lang',$row->code,PDO::PARAM_STR);
    $exe = $sql->execute();
    $i++;
}

Ou encore

Code php : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
 
$i = 0;
while($row = $sql_lg->fetch()){
    $sql = DbConnect::getInstance()->prepare("UPDATE pic_lang SET title=:title,alt=:alt WHERE id_pic=:id AND lang=:lang");
    $exe = $sql->execute(array(
        ':title'=>$_POST['title'][$i],
        ':alt'=>$_POST['alt'][$i],
        ':id'=>$_GET['id_pic'],
        ':lang'=>$row->code
    ));
    $i++;
}