Comment insérer un hébreu valeur dans une base mysql en php
J'essaie d'insérer un hébreu valeur dans ma base mysql, à la place de l'hébreu les valeurs ressemble à ça.
שדגשדכעשד
Le classement de la table est latin1_swedish_ci par défaut, j'ai essayé aussi de changer pour de l'utf-8_general_ci, hebrew_bin, hebrew_general_ci mais le résultat est toujours le même.
Dans mon code j'utilise bien sûr la balise meta pour configurer le jeu de caractères:
<meta charset="UTF-8">
Et avant ma requête php, j'ai ajouté cette ligne:
mysql_query("SET NAMES utf8");
Je suis l'affichage du résultat dans le phpmyadmin.
essayez
même résultat.
Cela pourrait être utile stackoverflow.com/questions/5287821/...
Essayez de l'extraction et de montrer les données sans phpMyAdmin, il doit également avoir une bonne paramètres d'encodage.
mysql_set_charset('utf8');
avant vous insérez les valeurs.même résultat.
Cela pourrait être utile stackoverflow.com/questions/5287821/...
Essayez de l'extraction et de montrer les données sans phpMyAdmin, il doit également avoir une bonne paramètres d'encodage.
OriginalL'auteur Imri Persiado | 2013-05-30
Vous devez vous connecter pour publier un commentaire.
Vérifier la collation_connection:
Vous avez besoin de faire un dépannage, l'exécution de la requête, j'ai suggéré à partir de votre script PHP (et afficher les résultats) pour s'assurer que tous les paramètres de classement sont corrects.
OriginalL'auteur dwjv
J'ai résolu mon hébreu problème de langue. C'était une base de données et la rangée de table/champ problème de codage. Voici la solution que j'ai utilisée. J'ai pris l'aide d'une autre réponse et le lien est donné ci-dessous, au cas où quelqu'un en a besoin.
utf8_general_ci
.utf8_general_ci
.Dans le PHP script de connexion mis
Dans le xhtml la balise head de mettre
Si vous utilisez MySQLi, mettez ce code dans le script de connexion après la sélection de la base de données:
Si vous utilisez PDO, mettre
La première réponse m'a aidé et je l'ai pris à partir de là
Sardar Raj c'était la magie de la place pour moi: mysql_query("SET NAMES 'utf8'") +1
OriginalL'auteur Sarkar Raj
Définir le jeu de caractères à trouver la solution
Lors de la création de la base de données
Ou si la base de données est déjà créé
OU lors de l'écriture de la requête
OriginalL'auteur Praveen D
vous devriez assurez-vous que:
Alors vous devriez être en mesure de visualiser l'hébreu, ou en toute autre langue, correctement dans phpadmin
OriginalL'auteur Aris
Je dirais, afin de s'assurer que les valeurs sont passées bien à la base de données, je voudrais ajouter un dé de tresorerie avant de l'insérer dans la base de données et d'impression de la valeur, exemple:
Si elle va bien, alors que le problème est sur le côté de la base de données, sur la base de données, je voudrais essayer avec ce classement
| hébreu | ISO 8859-8 hébreu | hebrew_general_ci | 1 |
comme par http://dev.mysql.com/doc/refman/5.0/en/charset-mysql.html suggèrent.
Mais si elle échoue sur le php côté, la raison peut être, le serveur ne prend pas en charge l'hébreu, assurez-vous que sur le code html du document de sortie vous utilisez la bonne balise meta avec
Laissez-nous savoir comment procéder, bonne chance 🙂
OriginalL'auteur peterpeterson
Je suis d'accord avec le définir comme de l'utf-8 en option, cependant, si pour quelque raison vous ne pouvez pas, alors vous pourriez toujours convertir en base64. Pas le meilleur (et de loin), mais il pourrait aider quelqu'un à sortir d'un trou.
OriginalL'auteur Heather Herbert
Pour une utilisation future, si vous avez ce problème et que vous utilisez PDO et pas mysqli, vous aurez besoin de le faire comme cela:
dans ce cas, vous devrez l'utiliser comme ceci:
$this->conn->exec("set names utf8");
Espère que cela aide pour le futur, les personnes qui ont ce problème et l'utilisation de l'AOP.
Le meilleur de la chance.
OriginalL'auteur GabMic
ce qui finalement m'a aidé est d'ajouter le jeu de caractères à la connexion:
OriginalL'auteur Holy Moses