Accueil > Forum > > > > php et l'arabe(urgent)
php et l'arabe(urgent)
vendredi 8 juin 2007 à 13:37:06 |
php et l'arabe(urgent)

jack_bauer42r
|
salut, je suis en train de concevoir une application en php/mysql en langue arabe. la table mysql utilise l'encodage utf8_unicode_ci et l'affichage dans phpmyadmin est correct mais si j'étais d'afficher les données de la table avec un script j'obtiens Ù.اد٦ة. j'ai essayé de modifier l'encodage de la page en utf8 ou en windows-1256 mais ça ne marche toujours pas.
|
|
vendredi 8 juin 2007 à 14:03:54 |
Re : php et l'arabe(urgent)

J_G
|
Salut,
As-tu vérifié que la connexion MySQL utilise l'encodage UTF-8 ? Car sinon, tu perds l'encodage sur le trajet des données entre MySQL et PHP...
Pour le savoir :
$link = mysql_connect('localhost', 'mysql_user', 'mysql_password'); $charset = mysql_client_encoding($link);
echo "The current character set is: $charset\n";
Pour le faire :
mysql_query("SET CHARACTER SET 'utf8'", $link);
Note, avec mysqli :
$charset = $mysqli->character_set_name(); Et :
if (!$mysqli->set_charset("utf8")) {
printf("Error loading character set utf8: %s\n", $mysqli->error);
} else {
printf("Current character set: %s\n", $mysqli->character_set_name());
}
Si le pb n'est pas là... A+ A+
|
|
vendredi 8 juin 2007 à 18:51:35 |
Re : php et l'arabe(urgent)

jack_bauer42r
|
j'ai essayé avec la fonction que voous m'avez donné et le message est
The current character set is: latin1.ma base de donnée ainsi que les tables utilisent utf8_unicode_ci mais en vain. les pages qui se chargent d'afficher les résultats de mes requêtes sont réglés sur utf8 aussi. merci de votre aide
|
|
vendredi 8 juin 2007 à 19:22:58 |
Re : php et l'arabe(urgent)

J_G
|
L'erreur est donc (peut-être) ici : The current character set is: latin1
Il ne faut pas confondre stockage des données, traitement des données et affichage des données...
Vos données ont beau être stocké au format utf8, elles sont traitées comme du latin1... Il faut que la CONNEXION à la base de donées soit dans le bon jeu de caractères, c'est à dire utf8.
La commande SQL pour changer ça est : mysql_query("SET CHARACTER SET 'utf8'", $link); ou avec mysqli :$mysqli->set_charset("utf8")
Bien sûr, il faut le faire AVANT de récupérer les données de la base (via un select).
|
|
dimanche 10 juin 2007 à 11:18:38 |
Re : php et l'arabe(urgent)

jack_bauer42r
|
bon, j'ai obtenu un sursis donc j'ai décidé de réecrire tout le code depuis le début, ce qu'il me faut savoir ce sont les paramètres d'encodage de la base de données et des pages du site. est ce que je dois créer une base de données dont l'encodage est utf8, les pages doivent-ils être en utf8? merci.
|
|
dimanche 10 juin 2007 à 13:05:22 |
Re : php et l'arabe(urgent)

J_G
|
Salut, Réercrire tout le code !!! C'est peut-être excessif... Enfin bon, donc le meilleur conseil que je puisse te donner : TOUT EN UTF8 UNICODE Surtout si tu utilises une langue dont l'alphabet n'est pas, mais pas du tout, latin... Come l'arabe. utf-8 est un jeu de caractère qui essaye de rassembler tout les alphabets. C'est une normalisation... c'est international... Donc il faut l'utiliser. Tu pourrais même utiliser utf-16. Bref, il te suffit de - changer la déclaration du jeu de caractère par défaut de ta base de données
- changer les jeu de caractère par défaut des tables
- et surtout, changer les jeu de caractère des champs textes des tables.
- Créer une petite class d'abstraction de la base de donnée... qque chose de très simple comme ça :
class db { private $link; function __construct() {
$this->link = mysql_connect(...); mysql_select_db('dbname',$this->link); $this->query("set character set 'utf8'"); } function query($sql) {
return mysql_query($sql,$this->link); } } // Exemple d'utilisation :
$db = new db; $mysql_res = $db->query("select champs from table where cond");// et traitement de $mysql_res comme tu sais faire.
- Bien penser à spécifier le jeu de caractère des pages générée
- via les entête HTTP : header('Content-type: text/html; charset: utf-8');
- ou un balise META dans la page : <meta http-equiv="Content-type" content="text/html; charset utf-8" />
- Et en cas de problème : les fonction utf8_encode() / utf8_decode() devraient te sauver.
A+
|
|
dimanche 10 juin 2007 à 13:31:48 |
Re : php et l'arabe(urgent)

jack_bauer42r
|
j'apprécie vraiemnt votre aide. vraiment merci. pour la création je dois donc déclarer mes tables avec l'option "DEFAULT CHARSET = utf8" et est ce que je peux utiliser les fonctions mysql_query() .... à la place des fonctions que vous avez cité car je n'ai pas une grande sur la poo en php. bon pour réecrire tout le code, ce n'est pas tout à fait le mot.
|
|
dimanche 10 juin 2007 à 14:04:34 |
Re : php et l'arabe(urgent)

J_G
|
oui, aucun problème pour utiliser mysql_query...
Simplement il ne faut pas oublier de définir une connexion à la base de donner en utf-8. Ca peut-être configuré par défaut qque part dans le fichier de configuration de mysql (my.conf)... mais je doute que tu ai accès à ce fichier.
Donc, il faut bien faire la requête "set character set 'utf8'" après la connexion à la base.
OK ?
|
|
mardi 19 juin 2007 à 22:54:06 |
Re : php et l'arabe(urgent)

jack_bauer42r
|
j'ai tout essayé mais je n'arrive pas à résoudre le problème. c'est toujours ce The current character set is: latin1. ce qui ne résout pas mon problème. si vous avez une autre idée n'hésitez pas à me la filer. merci. 
|
|
mardi 19 juin 2007 à 23:38:25 |
Re : php et l'arabe(urgent)

J_G
|
non, aucune idée de plus, désolé...
|
|
Cette discussion est classée dans : table, php, urgent, mysql, arabe
Répondre à ce message
Sujets en rapport avec ce message
PB update table mysql ! [ par lolo ]
Comment pourrai-je faire pour mettre à jour une table mysql par le biais d'un formulaire (parcourir ...*.cvs) et d'un fichier php d'update de table my
Récupération du contenu d'une table Mysql en PHP [ par BSide ]
Bonjour,dans ma table TABLE se trouvent 3 champs C1, C2 et C3 que je renseigne par un formulaire + INSERT INTO etc.Actuellement se trouvent dans TABLE
mysql et php [ par nico606 ]
Salut g un probleme je debute en php et je viens de charger un espace membre pour mon site il est evidemment en php et Mysql y a une page d'installati
Pas de surbrillance en php ? [ par nougitch ]
Bonjour, Impossible de faire un "onmouseover" et un onmouseout" dans mon code php. Ca marche très bien en HTML... Voir la balise en gras. Merci d'a
update une table mysql via php [ par kaddouremna28 ]
salut à tous, j'ai un problème de mise a jour d'une table mysql via php et voici le code :UPDATE table SET num='$num', nom='$nom' WHERE code='$code'j'
probleme d' Affichier table mysql [ par khaledinfor ]
pour affichier d'un table mysql en php utilise deux page web : affichier.php et affichier_lien.php creation d'un table table1 sur la base blog.creat
[PHP/MYSQL]Scripte d'ajout de points par allopass [ par healiha ]
Bonjour tous le monde il se trouve que je tien un site et que j'aimerais que les utilisateurs gagnent 10 points quand l'allopass entré est bon de mani
php mysql html [ par hela31 ]
je travaille sur un site web dans mes etude gestion d une residence j ai table client table tarifs table disponibilite dans une page j ai un tableau q
php/sql join query [ par theunknown0o ]
Bonjour tout le monde,j'essaie d'executer une requete 'join' sql dans un fichier php, mais a chaque fois j'ai une erreur,au niveau de la connexion au
session php [ par gign55 ]
Bonjour, je me suis mis à utiliser WAMP pour créer un site internet. j'ai suivi quelques conseils sur d'autres sites pour créer un système de session
Livres en rapport
|
Derniers Blogs
ROSLYN FLUENT APIS: ROSLYNHELPER NUGET PACKAGEROSLYN FLUENT APIS: ROSLYNHELPER NUGET PACKAGE par Matthieu MEZIL
Si vous utilisez Roslyn et que vous vous voulez vous simplifier le code du code rewriter, je vous conseille d'installer mon NuGet package RoslynHelper ....(read more) ...
Cliquez pour lire la suite de l'article par Matthieu MEZIL POUR RAPPEL ! LES SPéCIFICATIONS DES PROTOCOLES OFFICE ET SHAREPOINT SONT DISPONIBLES SUR MSDNPOUR RAPPEL ! LES SPéCIFICATIONS DES PROTOCOLES OFFICE ET SHAREPOINT SONT DISPONIBLES SUR MSDN par neodante
Quelle est le point commun entre : Microsoft il y a 10 ans et Apple aujourd'hui ? Réponse: avoir une politique de protocoles propriétaires et fermés :) Car pour rappel (si si je vous assure c'est important de le rappeler), la majorité des spécifications e...
Cliquez pour lire la suite de l'article par neodante JOYEUX ANNIVERSAIRE NIXJOYEUX ANNIVERSAIRE NIX par ebartsoft
Souhaitons un bon et joyeux anniversaire à notre hôte à tous, Nix.
Je ne le répéterais jamais assez mais sans lui rien ne serait possible. Il défit en permanence les lois de la gravité et comme il le dit si bien, si tu lui fais confiance ça devra...
Cliquez pour lire la suite de l'article par ebartsoft IMAGINE CUP 2012, MAKE A SIGN EN FINALEIMAGINE CUP 2012, MAKE A SIGN EN FINALE par junarnoalg
Voilà qui est fait, la nouvelle est officielle ! L'équipe belge "Make a Sign" va au pays des kangourous défendre son projet dans la catégorie Software Design. http://www.imaginecup.com/CompetitionsContent/Competition/WorldwideFinalists.aspx V...
Cliquez pour lire la suite de l'article par junarnoalg KINECT 1.5 IS OUT !KINECT 1.5 IS OUT ! par Vko
La version 1.5 du Kinect For Microsoft vient tout juste de sortir ! Plein de nouveautés: Tracking de squelette en Near Mode Détection en position assise Détection faciale avec un SDK dédié Documentation et des guideline (enfin) Un out...
Cliquez pour lire la suite de l'article par Vko
Logiciels
sDEVIS-FACTURES vlPRO (8.1.0.3)SDEVIS-FACTURES VLPRO (8.1.0.3)sDEVIS-FACTURES vlPRO a été mis au point pour les particuliers, créateurs, entrepreneurs, artisa... Cliquez pour télécharger sDEVIS-FACTURES vlPRO 974 Application Server (12.2.4.6)974 APPLICATION SERVER (12.2.4.6)Développez de puissantes applications dans un environnement de 'cloud computing', clusterisé, séc... Cliquez pour télécharger 974 Application Server vPicture (1.4.2.1)VPICTURE (1.4.2.1)Avec vPicture, hébergez vos images facilement et rapidement.
vPicture est un utilitaire simple, ... Cliquez pour télécharger vPicture Easy-Planning (2.2.1.6)EASY-PLANNING (2.2.1.6)Easy-Planning permet de créer des plannings sous la représentation de diagrammes et est adapté au... Cliquez pour télécharger Easy-Planning COM-BACKUP (2.0)COM-BACKUP (2.0)
COM-BACKUP est un logiciel de sauvegarde qui permet de planifier les sauvegardes de vos dossiers ...
Cliquez pour télécharger COM-BACKUP
|