client -בעיה עם העברית

mhhhdm

משתמש פעיל
מנוי פרימיום
בוגר/תלמיד פרוג
עיצוב גרפי
D I G I T A L
php שולף מdb ופולט עברית כסימני שאלה

זה קרא דווקא בגלל שכאשר אני מכניס לדאטא בייס
אני מוסיף את הפקודה

SET NAMES 'UTF8'
אני אימצתי את המשפט האחרון בגלל שבלעדיו המילה הייתה מופיע ה
בתוכנת המסד workbench ככה:
<table><tbody><tr><td>úéðå÷ åúéðå÷ú</td></tr></tbody></table> אך עם זאת כאשר הייתי פולט ב-php ,ללא הוספת המשפט הזה,זה היה נראה בסדר גמור בעברית.
נ.ב ב-firebug דווקא מציג לי את העברית , אם אני מאחסן אותה במשתני js כעברית (זאת אומרת כמו שמוצג בדאטא בייס (בעזרת המשפט

SET NAMES 'UTF8')
זה הפוך מהפלט שמקבל דרך -php .
js -firebug לא מציג את המילים בעברית כמו php
שהוכנסו ללא
SET NAMES 'UTF8'
אלא משובש

אבל אני ממש בבעיה כי :
כאשר אני מורה ל-js להכניס את ערך המשנתה ל-div אז זה מוצג ב-div כסימני שאלה !
ניתן לראות
את פלט- php

http://www.quizner.co/PHP-Words/get_words_by_id.php

כמו כן ניתן לראות את ה-quiz למטה
http://quizner.co/quizner2.php
 

mat

------- Magicode -------
תשימו לב כמה אשכולות פתחתם פה על עברית. ואתם רוצים שנעזור לכם רק בדרך שלכם. אין סיכוי ככה.

במקרה כזה צריך להתחיל מהתחלה.

בשביל לעזור לכם. אתם צריכים לכתוב באיזה IDE או עורך קוד אתם משתמשים.

דבר שני להריץ את הפקודה הזאת. ב mysql. תחליפו את tableName בטבלה שלכם.

קוד:
SHOW CREATE TABLE tableName

ותכתבו את הפלט פה.
 

mhhhdm

משתמש פעיל
מנוי פרימיום
בוגר/תלמיד פרוג
עיצוב גרפי
D I G I T A L
נכתב ע"י mat;1221144:
תשימו לב כמה אשכולות פתחתם פה על עברית. ואתם רוצים שנעזור לכם רק בדרך שלכם. אין סיכוי ככה.

במקרה כזה צריך להתחיל מהתחלה.

בשביל לעזור לכם. אתם צריכים לכתוב באיזה IDE או עורך קוד אתם משתמשים.

דבר שני להריץ את הפקודה הזאת. ב mysql. תחליפו את tableName בטבלה שלכם.

קוד:
SHOW CREATE TABLE tableName
ותכתבו את הפלט פה.
סליחה .צודק\ת.תודה על האדיבות והעזרה
עובד עם visual studio אבל את הקוד אני לוקח ושומר מחדש ב-notepad++ עם utf - 8 without boot
למען האמת .רק את הדף הספציפי שמוצג . לא את כל הדפים האחרים כמו css ו-js


ניתן לראות את הבעיה כאןhttp://www.quizner.co/quizner5.php

התוצאה:

CREATE TABLE `WordsDB` (
`ID` varchar(25) default NULL,
`WordOrig` varchar(30) default NULL,
`WordTrans` varchar(100) default NULL,
`LangOrig` varchar(3) default NULL,
`LangTrans` varchar(3) default NULL,
`Sentences` varchar(500) default NULL
) ENGINE=MyISAM DEFAULT CHARSET=utf8
 

s976

משתמש סופר מקצוען
הנדסת תוכנה
D I G I T A L
האם הגדרת שהתחברות לDB תהיה בUTF8 ?
 

mhhhdm

משתמש פעיל
מנוי פרימיום
בוגר/תלמיד פרוג
עיצוב גרפי
D I G I T A L
נכתב ע"י s976;1221520:
האם הגדרת שהתחברות לDB תהיה בUTF8 ?
כן אם
אתה מתכוון ל משהו כמו set names utf8.
בנוסף הוספתי. תיקון- גם כשאני הופך את הדף ל-html זה נראה בסימני שאלה ??? במקום עברית
header('Content-Type: text/html; charset=utf-8');
<!--? php
header ('תוכן מסוג: text / html; charset = UTF-8')
?>

אבל זה לא עזר.-->
 

s976

משתמש סופר מקצוען
הנדסת תוכנה
D I G I T A L
אם אתה משתמש עם PDO, זה צריך להראות בערך כך
PHP:
$db = new PDO('mysql:host=127.0.0.1;dbname=my_db;charset=utf8', $user, $pass, array(PDO::MYSQL_ATTR_INIT_COMMAND => "SET NAMES 'utf8'"));
 

mat

------- Magicode -------
נכתב ע"י mhhhdm;1221506:
סליחה .צודק\ת.תודה על האדיבות והעזרה
עובד עם visual studio אבל את הקוד אני לוקח ושומר מחדש ב-notepad++ עם utf - 8 without boot
למען האמת .רק את הדף הספציפי שמוצג . לא את כל הדפים האחרים כמו css ו-js


ניתן לראות את הבעיה כאןhttp://www.quizner.co/quizner5.php

התוצאה:

CREATE TABLE `WordsDB` (
`ID` varchar(25) default NULL,
`WordOrig` varchar(30) default NULL,
`WordTrans` varchar(100) default NULL,
`LangOrig` varchar(3) default NULL,
`LangTrans` varchar(3) default NULL,
`Sentences` varchar(500) default NULL
) ENGINE=MyISAM DEFAULT CHARSET=utf8

ההגדרה שאתם עושים ב noteped++ זה טוב.

ספציפית בעמוד שהבאתם אצלי זה עובד טוב אני רואה את העברית מצוין.

לגבי הdb אני לא מכיר את הקידוד הזה.

אצלי אני מגדיר את הכל בקידוד הזה.
utf8_general_ci

זה דוגמה מהdatabase הבסיסי של mysql.

קוד:
SHOW CREATE TABLE  `tables_priv`

קוד:
tables_priv
CREATE TABLE `tables_priv` (
 `Host` char(60) COLLATE utf8_bin NOT NULL DEFAULT '',
 `Db` char(64) COLLATE utf8_bin NOT NULL DEFAULT '',
 `User` char(16) COLLATE utf8_bin NOT NULL DEFAULT '',
 `Table_name` char(64) COLLATE utf8_bin NOT NULL DEFAULT '',
 `Grantor` char(77) COLLATE utf8_bin NOT NULL DEFAULT '',
 `Timestamp` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
 `Table_priv` set('Select','Insert','Update','Delete','Create','Drop','Grant','References','Index','Alter','Create View','Show view','Trigger') CHARACTER SET utf8 NOT NULL DEFAULT '',
 `Column_priv` set('Select','Insert','Update','References') CHARACTER SET utf8 NOT NULL DEFAULT '',
 PRIMARY KEY (`Host`,`Db`,`User`,`Table_name`),
 KEY `Grantor` (`Grantor`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_bin COMMENT='Table privileges'

הם משתמשים בשביל טקסטים ארוכים בקידוד הזה utf8_bin.
נראה לי שהוא רגיש לאותיות קטנות וגדולות.
 

mhhhdm

משתמש פעיל
מנוי פרימיום
בוגר/תלמיד פרוג
עיצוב גרפי
D I G I T A L
הערה חשובה:לי נראה שהבעיה היא בדפים ולא ב-db . כל הבעיה מתחילה רק שאני שם את הדפים בשרת החיצוני (godady) בשרת הפנימי-בין php ובין html מוצג ok .בשני המקומות ה-db הוא זהה ונמצא בשרת מרוחק . הדפים שונים
 

mhhhdm

משתמש פעיל
מנוי פרימיום
בוגר/תלמיד פרוג
עיצוב גרפי
D I G I T A L
הסדרתי - ביטלתי בהתחברות את ההגדרה של ה -set utf-8
ואמנם זה גרם שבתוכנת ה-workbench אני רואה את העברית כ-
<table><tbody><tr><td>לדון</td></tr></tbody></table> אך ב-client )בעזרת php ו-json) אני רואה את זה כעברית ולא סימני שאלה .
היה קשה לי מאוד. תודה רבה לכל העוזרים ובמיוחד ל- ו-,kingyes,s976,wmw

mat
 

אולי מעניין אותך גם...

הפרק היומי

הפרק היומי! כל ערב פרק תהילים חדש. הצטרפו אלינו לקריאת תהילים משותפת!


תהילים פרק קלז

א עַל נַהֲרוֹת בָּבֶל שָׁם יָשַׁבְנוּ גַּם בָּכִינוּ בְּזָכְרֵנוּ אֶת צִיּוֹן:ב עַל עֲרָבִים בְּתוֹכָהּ תָּלִינוּ כִּנֹּרוֹתֵינוּ:ג כִּי שָׁם שְׁאֵלוּנוּ שׁוֹבֵינוּ דִּבְרֵי שִׁיר וְתוֹלָלֵינוּ שִׂמְחָה שִׁירוּ לָנוּ מִשִּׁיר צִיּוֹן:ד אֵיךְ נָשִׁיר אֶת שִׁיר יְהוָה עַל אַדְמַת נֵכָר:ה אִם אֶשְׁכָּחֵךְ יְרוּשָׁלִָם תִּשְׁכַּח יְמִינִי:ו תִּדְבַּק לְשׁוֹנִי לְחִכִּי אִם לֹא אֶזְכְּרֵכִי אִם לֹא אַעֲלֶה אֶת יְרוּשָׁלִַם עַל רֹאשׁ שִׂמְחָתִי:ז זְכֹר יְהוָה לִבְנֵי אֱדוֹם אֵת יוֹם יְרוּשָׁלִָם הָאֹמְרִים עָרוּ עָרוּ עַד הַיְסוֹד בָּהּ:ח בַּת בָּבֶל הַשְּׁדוּדָה אַשְׁרֵי שֶׁיְשַׁלֶּם לָךְ אֶת גְּמוּלֵךְ שֶׁגָּמַלְתְּ לָנוּ:ט אַשְׁרֵי שֶׁיֹּאחֵז וְנִפֵּץ אֶת עֹלָלַיִךְ אֶל הַסָּלַע:
נקרא  3  פעמים

לוח מודעות

למעלה