Apostrophe et compagnie

tomyqc

Membre confirmé
22 Février 2005
38
0
Bonjour,

j'ai installé mysql sur mon mac. Dans mon site, j'ai un formulaire style commentaire. Et lorsque que dans le champs titre ou commentaire je mets des virgules ou des apostrophes les données ne s'ajoutent pas dans ma BDD.

Savez-vous pourquoi ?
 

canibal

Membre actif
29 Mai 2005
394
27
38
San Jose, CA
tomyqc a dit:
Bonjour,

j'ai installé mysql sur mon mac. Dans mon site, j'ai un formulaire style commentaire. Et lorsque que dans le champs titre ou commentaire je mets des virgules ou des apostrophes les données ne s'ajoutent pas dans ma BDD.

Savez-vous pourquoi ?

Oui car les ' sont des caractères spéciaux de chaines de caractère donc lorsque tu l'utilises dans ton code il est interprété
la solution est de placé des antislash (\) devant tes guillemets

il y une fonction qui fait ça très bien en php : php addslashes

(pour plus d'ide sur cette fonction uilise google ou le man
petit exemple

<?php

$str = "Is your name O'reilly?";
echo addslashes($str); // Is your name O\'reilly?

?>
 

Marc-André

Membre actif
24 Juillet 2003
559
17
45
Ottawa
Tu peux rajouter un petit code comme celui-ci pas loin du début de ton application:

if (get_magic_quotes_gpc()) {

// Oui? Enlève les slashes rajoutés

$_REQUEST = array_map('stripslashes', $_REQUEST);
$_GET = array_map('stripslashes', $_GET);
$_POST = array_map('stripslashes', $_POST);
$_COOKIE = array_map('stripslashes', $_COOKIE);

}



Marc-André;)