Apostrophe et compagnie

tomyqc

Membre junior
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 confirmé
29 Mai 2005
393
27
37
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 émérite
24 Juillet 2003
559
17
44
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é;)