Page 1 sur 1

Un problème de copier/coller...

Posté : 10 févr. 2006, 00:45
par Invité
Bonjour à toutes et à tous.

Je me suis inscri sur ce forum car je débute en php et il se peut que j'appelle à l'aide plusieurs fois durant mon périple !

Donc voila, je vous explique mon premier petit souci :
J'ai créé une page d'administration permettant d'ajouter des news dans la base de données et sur la page d'index du site (je tourne en local pour le moment).
Il fonctionne très bien, le titre, le contenu, l'auteur ainsi que la date s'affiche sans problème.
Sauf dans un cas !
Eh oui ! Lorsque je fais un copier/coller d'un texte de n'importe ou (Word, un site internet etc...) : impossible d'afficher la news sur la page d'index puisqu'elle ne s'enrigistre pas dans la base de données. Pourtant je n'ai aucune erreur et cela marche très bien lorsque je tappe le texte.

Précisions : ce n'est pas un problème de caractères spéciaux non plus puisque j'arrive à les afficher, lorsque je tappe manuellement un texte.

Je ne vois pas du tout d'ou pourrait provenir le problème, alors je vous demande votre précieuse aide !

Que faire ??!

Merci d'avance !

Posté : 10 févr. 2006, 10:06
par Cyrano
Est-ce que la validation du formulaire de saisie comporte des messages d'erreur parsonalisé pour des champs obligatoires non remplis et ce genre de chose ? Que se passe-t-il lorsque tu fais un copier/coller dans ce cas ?

En regardant directement dans ta base de données via phpMyAdmin, est-ce que les textes sont enregistrés ou non ?

Posté : 10 févr. 2006, 12:48
par Psyko
Non, aucune erreur.
Lorsque que je fais ce fameux copier/coller, il m'envoie le message de confirmation comme si tout s'était bien passé.
Donc je retourne sur la page d'index mais elle ne s'affiche pas...

Dans la base de données, en regardant directement dans phpmyadmin, rien du tout, la fameuse news ne s'enregistre absolument pas lorsque c'est un copier coller... :s

Si elle s'enregistrerai dans la base, elle s'afficherai je pense vu que mon programme tourne bien.
Mais je ne sais pas ce qui fait foirer son entrée dans la base quand on fait un copier/coller d'un texte... :s

Posté : 10 févr. 2006, 12:51
par Cyrano
Aucune idée, mais il y a certainement une explication: essaye de faire afficher les variables récupérées avant insertion.

Posté : 10 févr. 2006, 12:53
par albat
Surveille bien tout ce qui concerne les apostrophes et guillemets contenus dans ton texte...

Posté : 10 févr. 2006, 22:01
par Psyko
Aucune idée, mais il y a certainement une explication: essaye de faire afficher les variables récupérées avant insertion.
Le truc c'est que ca fonctionne très bien lorsque je tape moi même n'importe quel texte même avec tout type caractères spéciaux...
Surveille bien tout ce qui concerne les apostrophes et guillemets contenus dans ton texte...
Oui j'ai fais une multitude de tests... mais ça ne provient apparemment pas de là.. :s

Posté : 10 févr. 2006, 22:14
par mafio
essaye la fonction
mysql_error()
et dis nous quel est le message affiché
mysql_query($sql) or die (mysql_error());
sa c'est pour te montrer comment l'utiliser

:roll:

Posté : 21 mars 2006, 11:15
par Psyko
essaye la fonction
mysql_error()
et dis nous quel est le message affiché
mysql_query($sql) or die (mysql_error());
sa c'est pour te montrer comment l'utiliser

:roll:
Excusez de ma lenteur mais je n'ai pas pu m'occuper ça pendant un laps de temps assez long...
Bref..

Merci Mafio et aux autres j'ai essayé la fonction mysql_error() et d'après ce que je peux en déduire c'est avec les apostrophes ( ' ) que ça ne passerait pas ...
En effet il m'affiche un problème de synthaxe à chaque ligne ou peut se trouver une apostrophe et lorsque je les supprime la news s'affiche.

Comment faire pour qu'il accepte ce caractère ?
Dans ma base de données l'interclassement de toutes mes tables (enfin j'en ai qu'une pour le moment) est réglé sur latin1_swedish_ci .

Merci pour votre précieuse aide.

Posté : 22 mars 2006, 23:50
par Psyko
Bon bah vu que je n'avais pas d'autres réponses, j'ai parcouru un peu tous les topics qui rejoignaient mon problème et j'ai fini par trouver le remède !!! :)

En effet il me suffisait d'utiliser la fonction addslashes () car c'était un problème lié aux guillemets " et ' .

Voila, merci quand même et à peut-être à bientôt pour un autre problème...