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 ?
 
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?

?>
 
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é;)