Insérer ' dans une BDD
Résolu
zelos666
Messages postés
181
Date d'inscription
Statut
Membre
Dernière intervention
-
zelos666 Messages postés 181 Date d'inscription Statut Membre Dernière intervention -
zelos666 Messages postés 181 Date d'inscription Statut Membre Dernière intervention -
Bonjour,
Je veux insérer plusieurs champs dans une base de donnée. Les champs contiennent des informations insérer pas un usager. Le problème, c'Est que lorsqu'on écrit dans un des champs une apostrophe « ' », mon insertion ne se fera pas car l'apostrophe va être vu comme étant la fin de l'insertion
Mon code d'insertion :
Ma fonction clearTxt :
Ma fonction clearTxt ajout un backslashe dès qu'il détecte une apostrophe. Pourtant, il ajout très bien mes backslash. J'ai aussi essayer avec mysql_real_escape_string, mais cela ne fonctionne pas plus.
J'ai mis les clearTxt aux chmpas qui ont des chances d'avoir des apostrophes. Si, par exemple, un usager insère un apostrophe dans le champs date, j'écrit un message d'erreur.
Je veux insérer plusieurs champs dans une base de donnée. Les champs contiennent des informations insérer pas un usager. Le problème, c'Est que lorsqu'on écrit dans un des champs une apostrophe « ' », mon insertion ne se fera pas car l'apostrophe va être vu comme étant la fin de l'insertion
Mon code d'insertion :
$query = "INSERT INTO $tableAnnonce( idUser, idType, entreprise, titre, debutParution, finParution, idTypeOrganisation, resume, details, contact, coordonnees ) VALUES( ".$idUser.", ".$idTypeAnnonce.", '".$this->clearTxt($entreprise)."', '".$this->clearTxt($titre)."', '".$debutParution."', '".$finParution."', '".$idTypeOrganisation."', '".$this->clearTxt($resume)."', '".$this->clearTxt($detail)."', '".$this->clearTxt($nomContact)."', '".$this->clearTxt($coordonnees)."');"; mysql_query($query);
Ma fonction clearTxt :
public function clearTxt($string){ $string = addslashes($string); return $string; }
Ma fonction clearTxt ajout un backslashe dès qu'il détecte une apostrophe. Pourtant, il ajout très bien mes backslash. J'ai aussi essayer avec mysql_real_escape_string, mais cela ne fonctionne pas plus.
J'ai mis les clearTxt aux chmpas qui ont des chances d'avoir des apostrophes. Si, par exemple, un usager insère un apostrophe dans le champs date, j'écrit un message d'erreur.
A voir également:
- Insérer ' dans une BDD
- Insérer une vidéo dans powerpoint - Guide
- Insérer signature word - Guide
- Insérer liste déroulante excel - Guide
- Insérer sommaire word - Guide
- Insérer une légende word - Guide
4 réponses
J'ai fait les test et sa ne marche pas non plus, pourtant ils insère très bien les \ avant les caractères spéciaux telle que les apostrophe.
Par contre, j'ai eu une idée, je pourrais essayer de crypter ou quelque chose dans se genre mon string pour insérer. J'ai essayer avec rawurlencode. Sa ne marche pas non plus donc si vous avez une idée, se sera très apprécié.
Merci.
<edit>
Finalement, en retirant les clearTxt et les addslashes, l'insertion se faisait comme voulu. Je crois que j'avais pas besoin de me compliquer la vie avec les apostrophes.
Merci.
</edit>
Par contre, j'ai eu une idée, je pourrais essayer de crypter ou quelque chose dans se genre mon string pour insérer. J'ai essayer avec rawurlencode. Sa ne marche pas non plus donc si vous avez une idée, se sera très apprécié.
Merci.
<edit>
Finalement, en retirant les clearTxt et les addslashes, l'insertion se faisait comme voulu. Je crois que j'avais pas besoin de me compliquer la vie avec les apostrophes.
Merci.
</edit>