לוגו אתר Fresh          
 
 
  אפשרות תפריט  ראשי     אפשרות תפריט  צ'אט     אפשרות תפריט  מבזקים     אפשרות תפריט  צור קשר     חץ שמאלה ‎print ‎"Hello World!"; if‎ ‎not rules.‎know ‎then rules.‎read(); חץ ימינה  

לך אחורה   לובי הפורומים > מחשבים > תכנות ובניית אתרים
שמור לעצמך קישור לדף זה באתרי שמירת קישורים חברתיים
תגובה
 
כלי אשכול חפש באשכול זה



  #1  
ישן 24-02-2009, 21:07
  משתמש זכר itaysela itaysela אינו מחובר  
 
חבר מתאריך: 01.02.09
הודעות: 120
שלח הודעה דרך MSN אל itaysela
בעיה משונה עם קידוד בעת שימוש בAJAX

היי חבר'ה. הבעיה שלי טיפה משונה מכיוון שאני לא מצליח לאתר את המקור שלה.

כאשר אני עושה שליחת AJAX ומשתמש בשורת הHeader הבאה
קוד PHP:
 header("Content-Type: text/html; charset=windows-1255"); 


התשובה שמקבלת מוצגת כמו שצריך.
אך אם אני מנסה להוסיף לDB נתונים דרך AJAX הנתונים נכנסים בתור ג'יבריש [דוגמא: ׳©׳“׳’׳“׳©׳’].

כאשר ניסיתי להסיר את הHeader הזה התשובה של הAJAX[טקסט רגיל] מגיע כג'יבריש [דוגמא: ���� �"�] וכאשר אני מכניס מידע לDB הוא כלל הניראה מוכנס עדיין כג'יברש אך תגובתו בAJAX ניראת טוב.

[כל האתר ניראה בג'יבריש והתגובה הספציפית מתוך הDB בגלל שהיא בג'יבריש, עושה הפוך על הפוך ומוצגת רגיל].

אין בעיה בDB כיוון שהכנסה רגילה שאינה בAJAX פועלת בסדר גמור.

תודה
_____________________________________
איתי סלע,
פיתוח מערכות תוכנה ואינטרנט.

תגובה ללא ציטוט תגובה עם ציטוט חזרה לפורום
  #6  
ישן 25-02-2009, 11:12
  משתמש זכר itaysela itaysela אינו מחובר  
 
חבר מתאריך: 01.02.09
הודעות: 120
שלח הודעה דרך MSN אל itaysela
בתגובה להודעה מספר 5 שנכתבה על ידי tnadav1 שמתחילה ב "אתה צריך לבחור קידוד אחד..."

ציטוט:
במקור נכתב על ידי tnadav1
אתה צריך לבחור קידוד אחד שאיתו אתה עובד ולהיות עקבי בכל איתו בכל המקומות.

Windows 1255 זה מתכון לבעיות קידוד. UTF-8 לא.
עם איזה קידוד אתה עובד? מה מוגדר ב-DB? מה מוגדר בתצוגה של הדף? באיזה קידוד הקבצים שמורים?


מסכים איתך בהחלט.
הבעיה הינה כאשר אני מגדיר Header:

קוד PHP:
 header("Content-Type: text/html; charset=UTF-8"); 


הטקסט הרגיל של האתר מוצג כג'יבריש [���� �"�]. אם נצליח למצוא את הסיבה לזה ולפתור אותה אז הכל יהיה בסדר כיוון שהDB כניראה גם נשמר בתור UTF8 ולכן הבעיה נוצרת כאשר אני משתמש בHeader בwindows1255 ...

בDB הכל מוגדר בתור UTF8. תצוגת הדף Windows1255 ולגבי הקבצים אני לא יודע, איך אני יכול לבדוק? אני משתמש ב Eclipse PDT.

תודה על העזרה חבר'ה.
_____________________________________
איתי סלע,
פיתוח מערכות תוכנה ואינטרנט.

תגובה ללא ציטוט תגובה עם ציטוט חזרה לפורום
  #7  
ישן 25-02-2009, 11:55
  משתמש זכר dorM dorM אינו מחובר  
מנהל
 
חבר מתאריך: 26.07.08
הודעות: 6,473
בתגובה להודעה מספר 6 שנכתבה על ידי itaysela שמתחילה ב "[QUOTE=tnadav1]אתה צריך לבחור..."

ציטוט:
הבעיה הינה כאשר אני מגדיר Header:

קוד PHP:
 header("Content-Type: text/html; charset=UTF-8"); 



הטקסט הרגיל של האתר מוצג כג'יבריש [���� �"�].


אני מניח שהתבלבלת וכתבת כאן קידוד UTF-8 בפונקציית ה-header...

הקידוד חייב להיות מוגדר היטב ואחיד בכל המערכת, בכל האפליקציות. ראה כאן: http://www.fresh.co.il/vBulletin/sh...ad.php?t=458692

ציטוט:
בDB הכל מוגדר בתור UTF8

למה? :|

ציטוט:
תצוגת הדף Windows1255 ולגבי הקבצים אני לא יודע, איך אני יכול לבדוק? אני משתמש ב Eclipse PDT.

ב-FF, כדי לבדוק איזה קידוד הדפדפן קיבל, תלחץ לחצן ימני בעכבר ואז Page info.

אמורות להיות שם 2 הגדרות של קידוד - אחד מתג ה-meta והאחר מהכותר שהתקבל באמצעות פונקציית ה-header שהרצת. שתיהן צריכות להיות עם אותו הקידוד.
לא מכיר את Eclipse אבל הדבר היחידי שהוא יכול להצביע לך עליו זה הקידוד של הקבצים שלך. ד"א אם אתה לא מכיר, יש תוכנה בשם Notepad++ גם טובה לעריכת קבצים ...
תגובה ללא ציטוט תגובה עם ציטוט חזרה לפורום
  #20  
ישן 26-02-2009, 20:41
  משתמש זכר dorM dorM אינו מחובר  
מנהל
 
חבר מתאריך: 26.07.08
הודעות: 6,473
בתגובה להודעה מספר 19 שנכתבה על ידי itaysela שמתחילה ב "הנה[לאחר השינוי..."

אוקי.

בנוסף לכל מה שהגדרת עד כה, תבצע את הבא:


בכל השאילתות של יצירת הטבלאות, תשנה את הקידוד באופן הבא:
קוד:
/* SQL CODE */ CREATE TABLE table_Name ( /* Here you define columns with their appropriate column types etc. */ ) CHARACTER SET utf8 COLLATE utf8_general_ci


מייד לאחר ההתחברות למסד הנתונים (דבר שמתבצע עם הפונקציה mysql_connect), תריץ את השאילתא הבאה:
קוד:
SET NAMES utf8 COLLATE utf8_general_ci

שים לב, זו לא שאילתא להרצה אחת בלבד. צריך להריץ אותה כל פעם אחרי שמתחברים למסד הנתונים.

את הקבצים אתה צריך לשמור בקידוד UTF-8.
פה צריך להיזהר, כיוון שיש תוכנות לעריכת קבצים שכאשר שומרים איתן קובץ בקידוד UTF-8, הן גם מצרפות אליו חתימת BOM (דוגמא טובה לתוכנה כזו תהיה Notepad המוכרת של ווינדוס).
תמצא לך תוכנה אחרת שתשמור לך את הקבצים בקידוד UTF-8 אך ללא חתימת ה-BOM, שכן היא עלולה לשבש את כל העסק. דוגמא טובה לתוכנה כזו, תהיה ++Notepad, היא חינמית (תגגל...).

ד"א את כל הדברים שכתבתי למעלה בהודעה הזו, אתה יכול למצוא גם בעמוד הבא:
http://www.fresh.co.il/vBulletin/sh...ad.php?t=458692
זה לא היה בולט מספיק?
חשבתי להוסיף שם תוכן עניינים, אבל בלי קישורים לפיסקאות המתאימות זה לא יהיה טוב. (וזה לא נתמך ע"י העורך כאן)
תגובה ללא ציטוט תגובה עם ציטוט חזרה לפורום
תגובה

כלי אשכול חפש באשכול זה
חפש באשכול זה:

חיפוש מתקדם
מצבי תצוגה דרג אשכול זה
דרג אשכול זה:

מזער את תיבת המידע אפשרויות משלוח הודעות
אתה לא יכול לפתוח אשכולות חדשים
אתה לא יכול להגיב לאשכולות
אתה לא יכול לצרף קבצים
אתה לא יכול לערוך את ההודעות שלך

קוד vB פעיל
קוד [IMG] פעיל
קוד HTML כבוי
מעבר לפורום



כל הזמנים המוצגים בדף זה הם לפי איזור זמן GMT +2. השעה כעת היא 03:06

הדף נוצר ב 0.07 שניות עם 10 שאילתות

הפורום מבוסס על vBulletin, גירסא 3.0.6
כל הזכויות לתוכנת הפורומים שמורות © 2024 - 2000 לחברת Jelsoft Enterprises.
כל הזכויות שמורות ל Fresh.co.il ©

צור קשר | תקנון האתר