Incorrect string value

Résolu
Diogon Messages postés 164 Date d'inscription   Statut Membre Dernière intervention   -  
flomyme Messages postés 285 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour le monde,

En fait mon problème est relativement simple: lorsque j'essaie d'envoyer une chaine de caractères dans ma base de données, je reçoit l'erreur "incorrect string value:...

pourtant ma table est en utf-8... J'ai essayé de changer l'interclassement en latin1_general mais ça ne change rien

quelqu'un peut-il mettre fin à mon agonie de recherche et de réflexion? ^^

Merci...


A voir également:

8 réponses

Profil bloqué
 
Salut,

Je vais bientôt y aller, mais un petit bout de code peut-être ?
0
joomliner Messages postés 89 Date d'inscription   Statut Membre Dernière intervention   36
 
Je seconde. Un bout de code! et le contenu de la chaine en cause serait bien pour offrir un support
0
Diogon Messages postés 164 Date d'inscription   Statut Membre Dernière intervention  
 
pardon:

$rq = "UPDATE site_article SET title=\"$titre\", text=\"$text\", auteur='$auteur', autit='$autit' WHERE id=$id";
mysql_query($rq) or die(mysql_error());

pour la chaine de caractère, il suffit qu'elle contienne des accents pour que le problème se fasse sentir
0
arthezius Messages postés 3538 Date d'inscription   Statut Membre Dernière intervention   475
 
Tu peux essayer
$rq = 'UPDATE site_article SET title="'.mysql_real_escape_string($titre).'", text="'.mysql_real_escape_string($text).'", auteur="'.mysql_real_escape_string($auteur).'", autit="'.mysql_real_escape_string($autit).'" WHERE id="'.mysql_real_escape_string($id).'"';

J'ai ajouté entre autre la fonction mysql_real_escape_string() de PHP
https://www.php.net/manual/fr/function.mysql-real-escape-string.php

Sinon tu peux aussi faire un echo de la variable $rq pour vérifier comment elle est envoyé (juste le temps de faire des tests).
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Diogon Messages postés 164 Date d'inscription   Statut Membre Dernière intervention  
 
déjà essayé :-(

pour ce qui est de la variable elle est envoyée avec les caractères spéciaux

Ce qui est étonnant c'est qu'il proteste pour text mais pas pour title qui est pourtant avant lui...
0
Diogon Messages postés 164 Date d'inscription   Statut Membre Dernière intervention  
 
autre fait étonnant: si j'introduis la chaine par phpmyadmin, il n'y a pas le moindre problème
0
arthezius Messages postés 3538 Date d'inscription   Statut Membre Dernière intervention   475
 
Tu peux afficher le message d'erreur complet?
Es-tu sur d'avoir bien mis le même nom dans le formulaire ET dans ta requête?
Par exemple:
name="texte"
et
$_POST['text']

(Je dis ça à tout hasard)
0
Diogon Messages postés 164 Date d'inscription   Statut Membre Dernière intervention  
 
le message d'erreur:
Incorrect string value: '\xE9venem...' for column 'text' at row 1

pour ce qui est du formulaire je suis sur puisque lorsque je fais echo rq;, j'obtiens bien tout le contenu de ma chaine
0
arthezius Messages postés 3538 Date d'inscription   Statut Membre Dernière intervention   475
 
Tu as bien le même encodage sur tout tes fichiers?

Tu peux vérifier celui-ci avec entre autre Notepad++ (et je pense la majorité des éditeurs de texte).
0
Diogon Messages postés 164 Date d'inscription   Statut Membre Dernière intervention  
 
ok tu as raison, plusieurs des fichiers include placés dans ma page n'étaient pas encodés en utf-8, maintenant ça marche comme sur des roulettes...
0
flomyme Messages postés 285 Date d'inscription   Statut Membre Dernière intervention   12
 
regarde si ta bien mis ton string sinon voila ton erreur........

XD

Bon ok -------> []
-1