2010-10-14 5 views
0

J'ai une chaîne d'URL que je code pour utf8 du côté du client. Lorsque les données sont reçues dans le serveur avec mon script PHP, je ne peux pas voir les caractères de la langue grecque! Pourriez-vous s'il vous plaît m'aider à les convertir? les données seront sauvegardées dans la base de données mysql.php caractères grecs codant

+0

Quel encodage de caractères utilisez-vous dans votre base de données et lors de la mise à jour de ces données? – Gumbo

+0

jeu de caractères client \t UTF8 caractère de connexion jeu \t UTF8 caractère de base de données de jeu \t résultats définis latin1 caractère \t utf8 caractère serveur jeu \t latin1 système de jeu de caractères \t utf8 jeux de caractères dir \t/usr/local/mysql/share/mysql/charsets/ connexion de collation \t utf8_unicode_ci base de données de collation \t latin1_swedish_ci colla serveur de communication \t latin1_swedish_ci – stefanosn

Répondre

3

je me suis dit en dehors des heures que la configuration sur le serveur MySQL était ok. le problème était dans le script php mysql_query ("SET NAMES utf8", $ database_connection); mysql_query ("SET CHARACTER SET utf8", $ database_connection); Moontear avait raison à propos des lignes mais pour moi seulement travaillé en utilisant la première ligne seulement. La deuxième ligne a causé le ??? sur la base de données.

Merci les gars de toute façon.

0

Lorsque vous interrogez une base de données MySQL avec PHP, vous devez également spécifier UTF-8 pour la connexion, comme ceci:

mysql_query("SET NAMES utf8", $database_connection); 
mysql_query("SET CHARACTER SET utf8", $database_connection); 

Assurez-vous également que vos tables de base de données sont codés en UTF-8 (vous peut voir les caractères grecs en regardant directement les tables de la base de données) et vous définissez les en-têtes UTF-8 via PHP.

Il y a une bonne explication pour PHP, UTF-8 et plusieurs bases de données ici: PHP and UTF-8 Howto

+0

je reçois ??? sur ma base de données mysql! J'ai ce code mb_internal_encoding ('UTF-8'); J'ai aussi ajouté mysql_query ("SET NAMES utf8", $ con); mysql_query ("SET CHARACTER SET utf8", $ con); que je n'ai pas utilisé avant ... merci pour cette info ... la base de données mysql est définie sur UTF-8 Unicode (utf8) et la connexion est utf8_unicode_ci mais je reçois toujours ??? – stefanosn

+0

Les caractères grecs s'affichent donc correctement, par ex. phpMyAdmin? Essayez différents caractères tels que Umlauts öäü - insérez-les dans votre base de données et voyez s'ils sont retournés. Peut-être un problème spécifique pour les caractères grecs. De plus, votre configuration semble bonne. –

+0

je suis allé à un champ et mettre grec à l'intérieur et s'est présenté mais cela ne fonctionne pas lorsque j'importe par php. öäü ces caractères ont été montrés correctement par le chemin ... je suis désespéré ... n'importe quelle aide? – stefanosn