Précédent   Forum des professionnels en informatique > PHP > PHP & SGBD
PHP & SGBD Forum d'entraide sur les SGBD avec PHP. Avant de poster : FAQ BDD, toutes les FAQ PHP, cours BDD et sources BDD
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 28/08/2007, 15h08   #1
Membre habitué
 
Inscription : mai 2004
Messages : 383
Détails du profil
Informations forums :
Inscription : mai 2004
Messages : 383
Points : 129
Points : 129
Par défaut [SQL] Les caractères spéciaux

Salut,

Quand je mets dans un textarea des charateres francais, lorsque je les recupere avec une requete SQL, tout est correct.
Avec phpMyAdmin, dans la database je peux voir ceci:
Code :
1
2
Et voilà que la star de l\'Internet met cette fois la voûte
céleste à portée de souris grâce à une nouvelle option baptisée
Par contre, sur le serveur, avec le meme code PHP, dans la database j'ai ceci:
Code :
1
2
3
 
Et voilà que la star de l'Internet met cette fois la voûte
céleste à portée de souris grâce à une nouvelle option baptisée
Etant donne que le code PHP est le meme et que les navigateurs utilises sont aussi les memes, quelle peut-etre la difference au niveau configuration PHP ou MySQL qui fait ca ?

Merci,
Vincent.
defacta est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 28/08/2007, 16h14   #2
Rédacteur
 
Avatar de Yoteco
 
Alain Sahli
Ingénieur développement logiciels
Inscription : décembre 2004
Messages : 1 086
Détails du profil
Informations personnelles :
Nom : Alain Sahli
Âge : 25

Informations professionnelles :
Activité : Ingénieur développement logiciels
Secteur : High Tech - Éditeur de logiciels

Informations forums :
Inscription : décembre 2004
Messages : 1 086
Points : 1 479
Points : 1 479
C'est une erreur d'encodage. Tu sais quel encodage tu utilises pour stocker ton texte dans la base de données?

Si tu le sais il te suffit d'utiliser la fonction header de PHP pour le spécifier.

Code :
header('charset=utf-8');
Yoteco est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 28/08/2007, 17h40   #3
Membre habitué
 
Inscription : mai 2004
Messages : 383
Détails du profil
Informations forums :
Inscription : mai 2004
Messages : 383
Points : 129
Points : 129
Ca marche pas et c'est vraiment bizarre !

Si je fais un echo de la variable juste avant de faire la requete SQL pour l'inserer dans la DB ca marche mais ca met dans la base de donnnees les mauvais characteres:
Code :
1
2
3
4
5
6
7
8
9
10
11
12
 
 echo $body ;  -> OK  
 
  $query = "update articles set " ;
 
  $query .= "
                  articles_date = '$date', 
                  articles_type = '$type', 
                  articles_title = '$title', 
                  articles_body = ''$body',
                  articles_location = '$location',
                  articles_position = '$position' where articles_id = $articles_id" ;
Et en faisant un htmlspecialchars($body), ca ne marche pas non plus

Je ne sais plus trop quoi faire !

Une idee ?

Merci,
Vincent.
defacta est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 28/08/2007, 17h48   #4
Membre habitué
 
Inscription : mai 2004
Messages : 383
Détails du profil
Informations forums :
Inscription : mai 2004
Messages : 383
Points : 129
Points : 129
En fait par exemple ca me fait un echo "Numéricâble" mais ca me met Numéricâble dans la base de donnees !
defacta est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 28/08/2007, 18h11   #5
Membre habitué
 
Inscription : mai 2004
Messages : 383
Détails du profil
Informations forums :
Inscription : mai 2004
Messages : 383
Points : 129
Points : 129
Code :
     $body = htmlentities($body, ENT_NOQUOTES, "UTF-8") ;
Et roulez jeunesse !

defacta est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 22h47.


 
 
 
 
Partenaires

Hébergement Web