Caractère accentué entre php et mysql
Résolu/Fermé
drogba7213
Messages postés
1524
Date d'inscription
mardi 14 août 2007
Statut
Membre
Dernière intervention
3 avril 2010
-
19 juin 2009 à 17:57
drogba7213 Messages postés 1524 Date d'inscription mardi 14 août 2007 Statut Membre Dernière intervention 3 avril 2010 - 22 juin 2009 à 20:46
drogba7213 Messages postés 1524 Date d'inscription mardi 14 août 2007 Statut Membre Dernière intervention 3 avril 2010 - 22 juin 2009 à 20:46
A voir également:
- Caractère accentué entre php et mysql
- Caractère ascii - Guide
- Caractere speciaux - Guide
- Caractère spéciaux - Guide
- Caractere speciaux mac - Guide
- Easy php - Télécharger - Divers Web & Internet
20 réponses
LelLex
Messages postés
1628
Date d'inscription
mercredi 18 février 2009
Statut
Membre
Dernière intervention
5 septembre 2012
112
19 juin 2009 à 20:03
19 juin 2009 à 20:03
Salut ;
Ta BDD (Base De Donnée) ne connais pas les caractères spéciaux !
C'est afficher comme ça dans tes tables ?
Ta BDD (Base De Donnée) ne connais pas les caractères spéciaux !
C'est afficher comme ça dans tes tables ?
drogba7213
Messages postés
1524
Date d'inscription
mardi 14 août 2007
Statut
Membre
Dernière intervention
3 avril 2010
21
19 juin 2009 à 20:15
19 juin 2009 à 20:15
oui effectivement c'est affiché comme ca dans les champs de mes tables comment faire pour résoudre le problème svp?
C'est mysql la bdd
C'est mysql la bdd
LelLex
Messages postés
1628
Date d'inscription
mercredi 18 février 2009
Statut
Membre
Dernière intervention
5 septembre 2012
112
19 juin 2009 à 22:20
19 juin 2009 à 22:20
Comme je le disais plus haut,
Ta BDD (en SQL) ne connait pas les caractères spéciaux !
Enfin c'est pas qu'elle ne les connais, mais elle les utilises déjà pour sa sécurité.
Exemple :
- Tu récupère un information d'un formulaire : $_POST['user']
On met, pour le rendre plus compréhensible par le suite : $user = $_POST['user'];
Et ensuite tu envoi dans ta BDD : '$user'.
- Et ba laaaaaaa, un petit voyou passe sur ton site et te pique toute ta BDD.
- Méthodes : Injections SQL, Balise Html de récupération, etc.
- Donc pour éviter ça, tu fait : $user = mysql_real_escape_string(htmlspecialchars($_POST['user']));
- Si ton User inscrit <em>/Mr"Use'rs<em> : dans ta BBD ça sera écrit : <em>/Mr"Use'rs<em>
C'est un exemple parmi tant d'autres.
PS : (<em>/Mr"Use'rs<em>) n'est ni une Injection ou un Html de récupération.
PS 2 : htmlspecialchars n'es pas vraiment utile, cette fonction va bloqué le HTML. Mais l'autre est très importante ! Crois moi =P
Voila, à bon entendeur.
Bonne chance pour la suite.
Ta BDD (en SQL) ne connait pas les caractères spéciaux !
Enfin c'est pas qu'elle ne les connais, mais elle les utilises déjà pour sa sécurité.
Exemple :
- Tu récupère un information d'un formulaire : $_POST['user']
On met, pour le rendre plus compréhensible par le suite : $user = $_POST['user'];
Et ensuite tu envoi dans ta BDD : '$user'.
- Et ba laaaaaaa, un petit voyou passe sur ton site et te pique toute ta BDD.
- Méthodes : Injections SQL, Balise Html de récupération, etc.
- Donc pour éviter ça, tu fait : $user = mysql_real_escape_string(htmlspecialchars($_POST['user']));
- Si ton User inscrit <em>/Mr"Use'rs<em> : dans ta BBD ça sera écrit : <em>/Mr"Use'rs<em>
C'est un exemple parmi tant d'autres.
PS : (<em>/Mr"Use'rs<em>) n'est ni une Injection ou un Html de récupération.
PS 2 : htmlspecialchars n'es pas vraiment utile, cette fonction va bloqué le HTML. Mais l'autre est très importante ! Crois moi =P
Voila, à bon entendeur.
Bonne chance pour la suite.
Dalida
Messages postés
6728
Date d'inscription
mardi 14 mai 2002
Statut
Contributeur
Dernière intervention
11 janvier 2016
922
20 juin 2009 à 00:17
20 juin 2009 à 00:17
salut,
explique-nous davantage le problème.
quel est l'encodage de caractères de ta BDD et qu'est-ce que tu utilises pour la renseigner.
explique-nous davantage le problème.
quel est l'encodage de caractères de ta BDD et qu'est-ce que tu utilises pour la renseigner.
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
drogba7213
Messages postés
1524
Date d'inscription
mardi 14 août 2007
Statut
Membre
Dernière intervention
3 avril 2010
21
20 juin 2009 à 00:57
20 juin 2009 à 00:57
Alors je précise que mon appli (enfin "site") ne sera que local donc pas de problème d'injection sql etc....
bref pour répondre maintenant a dalida quand je rentre par exemple un résumé de film dans ma bdd donc ca
Cet épisode se déroule 6 mois après la fin de la saison 2. La vie des protagonistes n'a pas connu de changements majeurs durant cette période. Susan reste au chevet de Mike, dans le coma après son accident. Bree vit le parfait amour avec Orson Hodge (l'homme qui l'a aidée à s'échapper de l'hôpital psychiatrique). Lynette essaie de sauver sa famille de Nora, mère du premier enfant de Tom. Gabrielle s'occupe seule de Xiao-Mei (la mère porteuse de son enfant). Et enfin Edie tente désespérément de vendre l'ancienne maison de Paul Young
voila comment ca se rentre dans ma bdd
Cet épisode se déroule 6 mois après la fin de la saison 2. La vie des protagonistes n'a pas connu de changements majeurs durant cette période. Susan reste au chevet de Mike, dans le coma après son accident. Bree vit le parfait amour avec Orson Hodge (l'homme qui l'a aidée à s'échapper de l'hôpital psychiatrique). Lynette essaie de sauver sa famille de Nora, mère du premier enfant de Tom. Gabrielle s'occupe seule de Xiao-Mei (la mère porteuse de son enfant). Et enfin Edie tente désespérément de vendre l'ancienne maison de Paul Young
donc c'est un gros problème car quand je fais une requete portant sur le résumé ca me le ressort tel qu'il est dans la base normal lol
donc pour répondre à la question : quel est l'encodage de caractères de ta BDD?
Je ne sais pas trop comment savoir en fait
je pense que c'est ca :
Interclassement pour la connexion MySQL: utf8_general_ci
et à la question : qu'est-ce que tu utilises pour la renseigner
je rentre les infos grace au langage php / html
voila en espérant avoir répondu correctement au question aidez moi svp
merci d'avance
bref pour répondre maintenant a dalida quand je rentre par exemple un résumé de film dans ma bdd donc ca
Cet épisode se déroule 6 mois après la fin de la saison 2. La vie des protagonistes n'a pas connu de changements majeurs durant cette période. Susan reste au chevet de Mike, dans le coma après son accident. Bree vit le parfait amour avec Orson Hodge (l'homme qui l'a aidée à s'échapper de l'hôpital psychiatrique). Lynette essaie de sauver sa famille de Nora, mère du premier enfant de Tom. Gabrielle s'occupe seule de Xiao-Mei (la mère porteuse de son enfant). Et enfin Edie tente désespérément de vendre l'ancienne maison de Paul Young
voila comment ca se rentre dans ma bdd
Cet épisode se déroule 6 mois après la fin de la saison 2. La vie des protagonistes n'a pas connu de changements majeurs durant cette période. Susan reste au chevet de Mike, dans le coma après son accident. Bree vit le parfait amour avec Orson Hodge (l'homme qui l'a aidée à s'échapper de l'hôpital psychiatrique). Lynette essaie de sauver sa famille de Nora, mère du premier enfant de Tom. Gabrielle s'occupe seule de Xiao-Mei (la mère porteuse de son enfant). Et enfin Edie tente désespérément de vendre l'ancienne maison de Paul Young
donc c'est un gros problème car quand je fais une requete portant sur le résumé ca me le ressort tel qu'il est dans la base normal lol
donc pour répondre à la question : quel est l'encodage de caractères de ta BDD?
Je ne sais pas trop comment savoir en fait
je pense que c'est ca :
Interclassement pour la connexion MySQL: utf8_general_ci
et à la question : qu'est-ce que tu utilises pour la renseigner
je rentre les infos grace au langage php / html
voila en espérant avoir répondu correctement au question aidez moi svp
merci d'avance
Dalida
Messages postés
6728
Date d'inscription
mardi 14 mai 2002
Statut
Contributeur
Dernière intervention
11 janvier 2016
922
20 juin 2009 à 10:34
20 juin 2009 à 10:34
salut,
je rentre les infos grace au langage php / html
et ta page HTML qui contient le formulaire, tu lui as bien défini l'encodage de caractère ?
je rentre les infos grace au langage php / html
et ta page HTML qui contient le formulaire, tu lui as bien défini l'encodage de caractère ?
drogba7213
Messages postés
1524
Date d'inscription
mardi 14 août 2007
Statut
Membre
Dernière intervention
3 avril 2010
21
20 juin 2009 à 17:05
20 juin 2009 à 17:05
de cette manière?
<html> <head> <meta http-equiv="content-type" content="text/html; charset=ISO-8859-1"> ...
Dalida
Messages postés
6728
Date d'inscription
mardi 14 mai 2002
Statut
Contributeur
Dernière intervention
11 janvier 2016
922
20 juin 2009 à 19:36
20 juin 2009 à 19:36
oula, je t'ai oublié !
-:o(
bon ben on va essayé de vérifié étape par étape.
qu'en penses-tu ?
en premier, peux-tu faire un var_dump($_POST); en haut de ton script qui traite l'envoi du formulaire, stp.
histoire de voir si PHP reçoit les caractères correctement.
-:o(
bon ben on va essayé de vérifié étape par étape.
qu'en penses-tu ?
en premier, peux-tu faire un var_dump($_POST); en haut de ton script qui traite l'envoi du formulaire, stp.
histoire de voir si PHP reçoit les caractères correctement.
drogba7213
Messages postés
1524
Date d'inscription
mardi 14 août 2007
Statut
Membre
Dernière intervention
3 avril 2010
21
20 juin 2009 à 19:48
20 juin 2009 à 19:48
c'est bien ca?
array(16) { ["Type"]=> string(4) "Type" ["titre"]=> string(0) "" ["titreSaison"]=> string(0) "" ["titreEpisode"]=> string(0) "" ["NomSerie"]=> string(8) "NomSerie" ["NomSaison"]=> string(9) "NomSaison" ["genre"]=> string(5) "genre" ["Categorie"]=> string(10) "Catégorie" ["jaquette"]=> string(0) "" ["jaquetteSaison"]=> string(0) "" ["resume"]=> string(0) "" ["acteur"]=> string(0) "" ["realisateur"]=> string(0) "" ["lien"]=> string(0) "" ["x"]=> string(3) "118" ["y"]=> string(3) "107" } L'insertion des données s'est mal déroulé
array(16) { ["Type"]=> string(4) "Type" ["titre"]=> string(0) "" ["titreSaison"]=> string(0) "" ["titreEpisode"]=> string(0) "" ["NomSerie"]=> string(8) "NomSerie" ["NomSaison"]=> string(9) "NomSaison" ["genre"]=> string(5) "genre" ["Categorie"]=> string(10) "Catégorie" ["jaquette"]=> string(0) "" ["jaquetteSaison"]=> string(0) "" ["resume"]=> string(0) "" ["acteur"]=> string(0) "" ["realisateur"]=> string(0) "" ["lien"]=> string(0) "" ["x"]=> string(3) "118" ["y"]=> string(3) "107" } L'insertion des données s'est mal déroulé
drogba7213
Messages postés
1524
Date d'inscription
mardi 14 août 2007
Statut
Membre
Dernière intervention
3 avril 2010
21
20 juin 2009 à 22:14
20 juin 2009 à 22:14
up
Dalida
Messages postés
6728
Date d'inscription
mardi 14 mai 2002
Statut
Contributeur
Dernière intervention
11 janvier 2016
922
20 juin 2009 à 23:14
20 juin 2009 à 23:14
oui c'est bien ça.
donc c'est ton formulaire qui envoie avec un encodage impropre.
utilises-tu une requête Ajax (objet XMLHTTPRequest de Javascript) ?
si oui, tu peux t'arrêter là !
peux-tu nous dire si ton serveur renvoie une en-tête "Content-Type", si oui laquelle ?
(si tu ne vois pas de quoi je parle et que tu as une version en ligne, vas sur cette page, remplis le champ avec l'URL de ton site et dans le résultat, regarde la valeur associée à "Content-Type").
quel est l'encodage de tes fichiers sources (je parle de l'encodage du fichier lui-même pas de celui du document HTML ?
pour ça, regarde dans PSPad tu dois avoir ça dans un menu du genre "Affichage/Encodage de caractères".
pour le moment je ne pense qu'à ça.
["Categorie"]=> string(10) "Catégorie"
donc c'est ton formulaire qui envoie avec un encodage impropre.
utilises-tu une requête Ajax (objet XMLHTTPRequest de Javascript) ?
si oui, tu peux t'arrêter là !
peux-tu nous dire si ton serveur renvoie une en-tête "Content-Type", si oui laquelle ?
(si tu ne vois pas de quoi je parle et que tu as une version en ligne, vas sur cette page, remplis le champ avec l'URL de ton site et dans le résultat, regarde la valeur associée à "Content-Type").
quel est l'encodage de tes fichiers sources (je parle de l'encodage du fichier lui-même pas de celui du document HTML ?
pour ça, regarde dans PSPad tu dois avoir ça dans un menu du genre "Affichage/Encodage de caractères".
pour le moment je ne pense qu'à ça.
drogba7213
Messages postés
1524
Date d'inscription
mardi 14 août 2007
Statut
Membre
Dernière intervention
3 avril 2010
21
22 juin 2009 à 12:11
22 juin 2009 à 12:11
alors pour le content type je peux te dire que ca puisque mon site ne sera pas en ligne c'est juste un intranet
donc regarde :
et donc voila par contre je n'utilise pas d'ajax j'utilise une fonction javascript mais je ne pense pas que ca vienne de la c'est juste pour activer ou désactiver certain champ du formulaire par rapport a une liste.
et par contre j'ai pas compris la fin avec PSPad je ne sais pas ce que c'est!
si c'est dans le navigateur il est paramétré en occidentale.
donc regarde :
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1" />
et donc voila par contre je n'utilise pas d'ajax j'utilise une fonction javascript mais je ne pense pas que ca vienne de la c'est juste pour activer ou désactiver certain champ du formulaire par rapport a une liste.
et par contre j'ai pas compris la fin avec PSPad je ne sais pas ce que c'est!
si c'est dans le navigateur il est paramétré en occidentale.
Dalida
Messages postés
6728
Date d'inscription
mardi 14 mai 2002
Statut
Contributeur
Dernière intervention
11 janvier 2016
922
22 juin 2009 à 13:11
22 juin 2009 à 13:11
salut,
pour le Content-Type il faut celui renvoyer par le serveur pas celui du document HTML.
si tu es en local, avec Firefox et l'extension Firebug, regarde dans l'onglet "Réseau" tu y trouveras le contenu complet de la requête.
<edit>
beaucoup plus simple, je n'y pense jamais mais il suffit de faire Outils/Informations sur la page dans FF.
</edit>
pour Javascript on est bien d'accord que tu n'utilises pas l'objet XMLHTTPRequest ?
pour PsPad, pardon je me suis emmêlé les touches avec un autre fil.
je voulais parler de l'éditeur que tu utilises pour coder, par exemple Notepad++.
pour le Content-Type il faut celui renvoyer par le serveur pas celui du document HTML.
si tu es en local, avec Firefox et l'extension Firebug, regarde dans l'onglet "Réseau" tu y trouveras le contenu complet de la requête.
<edit>
beaucoup plus simple, je n'y pense jamais mais il suffit de faire Outils/Informations sur la page dans FF.
</edit>
pour Javascript on est bien d'accord que tu n'utilises pas l'objet XMLHTTPRequest ?
pour PsPad, pardon je me suis emmêlé les touches avec un autre fil.
je voulais parler de l'éditeur que tu utilises pour coder, par exemple Notepad++.
drogba7213
Messages postés
1524
Date d'inscription
mardi 14 août 2007
Statut
Membre
Dernière intervention
3 avril 2010
21
22 juin 2009 à 13:45
22 juin 2009 à 13:45
ah ok lol non j'utilise eclipse
alors pour le content voila ce que me retourne l'informations sur la page
Videothèque :
adresse URL : http://127.0.0.01/Videoth%c3%a8que/ajouter.php
type : text/html
mode de rendu : Mode de respect des standards
encodage : ISO-8859-1
taille : 1,58 Ko (1 618 octets)
URL de provenance : http://127.0.0.01/Videoth%c3%a8que/Choix.php
modifié le : lun. 22 juin 2009 13:40:51 CEST
non je n'utilise pas XMLHTTPRequest c'est sur
je voulais te dire merci pour ton aide car tu prend beaucoup de temps sur ce problème merci
alors pour le content voila ce que me retourne l'informations sur la page
Videothèque :
adresse URL : http://127.0.0.01/Videoth%c3%a8que/ajouter.php
type : text/html
mode de rendu : Mode de respect des standards
encodage : ISO-8859-1
taille : 1,58 Ko (1 618 octets)
URL de provenance : http://127.0.0.01/Videoth%c3%a8que/Choix.php
modifié le : lun. 22 juin 2009 13:40:51 CEST
non je n'utilise pas XMLHTTPRequest c'est sur
je voulais te dire merci pour ton aide car tu prend beaucoup de temps sur ce problème merci
Dalida
Messages postés
6728
Date d'inscription
mardi 14 mai 2002
Statut
Contributeur
Dernière intervention
11 janvier 2016
922
22 juin 2009 à 14:09
22 juin 2009 à 14:09
j'utilise eclipse
bon alors tu ouvres ton fichier source avec, tu fais "Edit/Set encoding…" et tu vérifies que c'est bien en ISO-8859.
tu prend beaucoup de temps sur ce problème
mais je t'en prie, on est là pour ça !
-;o)
bon alors tu ouvres ton fichier source avec, tu fais "Edit/Set encoding…" et tu vérifies que c'est bien en ISO-8859.
tu prend beaucoup de temps sur ce problème
mais je t'en prie, on est là pour ça !
-;o)
drogba7213
Messages postés
1524
Date d'inscription
mardi 14 août 2007
Statut
Membre
Dernière intervention
3 avril 2010
21
22 juin 2009 à 14:24
22 juin 2009 à 14:24
et voila on dirais que ca viens de la je modifie sur tout mes sourceje te tien au courant
drogba7213
Messages postés
1524
Date d'inscription
mardi 14 août 2007
Statut
Membre
Dernière intervention
3 avril 2010
21
22 juin 2009 à 14:42
22 juin 2009 à 14:42
Alors il semblerait que tu as réssolut une partie du problème car les données sont bien enregistrer dans la base donc ca c'est bon par contre sur ma page html de formulaire il y en a encore
Dalida
Messages postés
6728
Date d'inscription
mardi 14 mai 2002
Statut
Contributeur
Dernière intervention
11 janvier 2016
922
22 juin 2009 à 15:15
22 juin 2009 à 15:15
sur ma page html de formulaire il y en a encore
encore ?…
-:oD
encore ?…
-:oD
drogba7213
Messages postés
1524
Date d'inscription
mardi 14 août 2007
Statut
Membre
Dernière intervention
3 avril 2010
21
22 juin 2009 à 19:12
22 juin 2009 à 19:12
ah non c'est bon j'ai trouvé merci beaucoup pour ton aide.
j'ai un autre problème pourrais tu regarder stp?
http://www.commentcamarche.net/forum/affich 12959554 ouvrir une fenetre de l os par navigateur?#4
j'ai un autre problème pourrais tu regarder stp?
http://www.commentcamarche.net/forum/affich 12959554 ouvrir une fenetre de l os par navigateur?#4
Dalida
Messages postés
6728
Date d'inscription
mardi 14 mai 2002
Statut
Contributeur
Dernière intervention
11 janvier 2016
922
22 juin 2009 à 19:15
22 juin 2009 à 19:15
si tu peux résumer la solution, ce sera parfait !
-;o)
-;o)
drogba7213
Messages postés
1524
Date d'inscription
mardi 14 août 2007
Statut
Membre
Dernière intervention
3 avril 2010
21
22 juin 2009 à 20:46
22 juin 2009 à 20:46
ok bah en fait je ne sais pas comment l'expliquer c'est que tout simplement mes scripts était écrit avec des Aë au lieu de é