Insertion d'apostrophe dans MySQL = pas bien!

$heLL32 Messages postés 3 Date d'inscription   Statut Membre Dernière intervention   -  
jisisv Messages postés 3645 Date d'inscription   Statut Modérateur Dernière intervention   -
Salut la foule!
J'ai un probleme d'insertion dans MySQL...

Prenez un formulaire du style <TEXTAREA> qui sert a envoyer un commentaire par ex.
L'utilisateur note un truc du genre "Salut l'ami"
La, probleme! Le texte contient une quote! Ca va donc m'afficher une erreur de requete!

Comment faire pour que la base me l'accepte?? Je sais c'est ptetre tout con mais on n'peut pas tout savoir! ;-)

Thanx!

2 réponses

jisisv Messages postés 3645 Date d'inscription   Statut Modérateur Dernière intervention   934
 
Utilise addslashes
<?php
print(addslashes("Salut l'ami\n"));
?>
Salut l\'ami
////
mysql> describe x;
+-------+----------+------+-----+---------+-------+
| Field | Type | Null | Key | Default | Extra |
+-------+----------+------+-----+---------+-------+
| a | int(11) | YES | | NULL | |
| b | char(10) | YES | | NULL | |
+-------+----------+------+-----+---------+-------+
2 rows in set (0.00 sec)

mysql> insert into x values(1, 'L\'apostrophe');
Query OK, 1 row affected (0.00 sec)

mysql> select * from x where a=1;
+------+------------+
| a | b |
+------+------------+
| 1 | a |
| 1 | L'apostrop |
| 1 | L'apostrop |
+------+------------+
3 rows in set (0.03 sec)


Johan
The software said "Requires Windows98, Win2000, or better,
So I installed Unix.
10
$heLL32 Messages postés 3 Date d'inscription   Statut Membre Dernière intervention   7
 
Quel abruti je fais!
C'est en écrivant cette question que j'ai trouvé la réponse!! ;-)
En utilisant le caractère d'échappement pardi!!!

$sql="INSERT INTO table (commentaire) VALUES (\"$commentaire\");


J'apprends vite hein?! ;-P ;-P
7