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

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



  #6  
ישן 01-12-2010, 14:24
  ישראל K ישראל K אינו מחובר  
 
חבר מתאריך: 25.08.03
הודעות: 9,114
בתגובה להודעה מספר 5 שנכתבה על ידי idan1915 שמתחילה ב "מניסיון בנושא בגלל השינויים..."

ציטוט:
במקור נכתב על ידי idan1915
... על תשנה את הקידודים במסד עצמו, השאר אותם על ברירת המחדל ...

ההיפך הוא הנכון, יש להגדיר מתחילה את הקידוד הנכון.



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

אני לא יודע איך ענין היופי (הדר) קשור למסדי נתונים, אבל אני מניח שהתכוונת ל"כותר" (header).


רוב הבעיות נוצרות כשלא מגדירים את הקידוד כמו שצריך וכשבנקודה מסויימת, משנים קידוד לאחמ"כ.
יש להגדיר מלכתחילה את הקידוד הנכון למסד הנתונים, לטבלאות, לדפי הקוד שמבצעים את הפעולה, וכמו גם כל נקודה אחרת הדורשת הגדרת או הצהרה על קידוד הנכון.
אם בכל הנקודות הנדרשות יוגדר הקידוד utf-8, לא צפויה תקלה, ובעזרת כל תוכנה מתאימה ניתן יהיה לצפות בנתונים באופן תקין. גם בדפי הקוד שבונה האתר כותב בעצמו, גם במערכות מוכנות, וכמובן גם ב-PMA.
תגובה ללא ציטוט תגובה עם ציטוט חזרה לפורום
  #9  
ישן 16-01-2011, 15:46
  idan1915 idan1915 אינו מחובר  
 
חבר מתאריך: 27.11.10
הודעות: 34
בתגובה להודעה מספר 1 שנכתבה על ידי sza שמתחילה ב "בעיה בשליפת עברית ממסד נתונים mySQL"

לפני שאתה מזלזל ככה הייתי בודק.
מגירסא 4.1 MYSQL שומרת הכל בUTF-8. אין לך אפשרות לשנות זאת.

ההגדרה שאתה משנה זה באיזה קידוד MYSQL יחזיר לך את הנתונים.
אז לפני שאתה מפיל עליי אחריות לאובדן נתונים שווה לבדוק.

נכון שעבודה לא נכונה עם קידודים יכולה לגרום לאובדן שכזה אך זה ממש לא מהסיבה שתיארת כאן.

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

אם אני טועה אשמח לשמוע אבל יש צורה להגיד לדברים.
_____________________________________
עידן


מתכנת בסביבת הWEB בעיקר


נערך לאחרונה ע"י idan1915 בתאריך 16-01-2011 בשעה 15:49.
תגובה ללא ציטוט תגובה עם ציטוט חזרה לפורום
  #12  
ישן 22-01-2011, 13:15
  idan1915 idan1915 אינו מחובר  
 
חבר מתאריך: 27.11.10
הודעות: 34
בתגובה להודעה מספר 11 שנכתבה על ידי idan1915 שמתחילה ב "אני לא מוצא את זה כרגע. ראיתי..."

קראתי עכשיו מס' מאמרים באתר של MYSQL.
MYSQL עובדת ב4 רמות.
קידוד של השרת, של הבסיס נתונים, של הטבלה ושל הטור.
מגירסא 4.1 MYSQL מסוגל לבצע המרות של קידודים והוא מחולק לרמות שתיארתי.
ככל הנראה ניתן לשנות את הברירת מחדל בארבעת הרמות אך זה לא אומר כלום על איך המידע נשמר בסופו של דבר ואת זה לא מצאתי שם.

בבדיקה שלי בעת התקנת MYSQL באמצעות תוכנת ההתקנה ניתנת האפשרות לבחור את קידוד ברירת המחדל (ככל הנראה ברמת השרת).
הנה תוצאות של 2 שאילתות שהרצתי. הראשונה כאשר הקידוד שבחרתי בהתקנה הוא latin1 והשני כשבחרתי בutf-8.
קוד PHP:
 mysqlshow variables like 'char%';
+--------------------------+---------------------------------------------------------+
Variable_name            Value
     
|
+--------------------------+---------------------------------------------------------+
character_set_client     utf8
     
|
character_set_connection utf8
     
|
character_set_database   latin1
     
|
character_set_filesystem binary
     
|
character_set_results    utf8
     
|
character_set_server     latin1
     
|
character_set_system     utf8
     
|
character_sets_dir       C:\Program Files\MySQL\MySQL Server 5.1\share\chars
ets
\ |
+--------------------------+---------------------------------------------------------+
8 rows in set (0.00 sec


קוד PHP:
 mysqlshow variables like 'char%';
ERROR 2006 (HY000): MySQL server has gone away
No connection
Trying to reconnect...
Connection id:    1
Current database
: *** NONE ***

+--------------------------+---------------------------------------------------------+
Variable_name            Value
     
|
+--------------------------+---------------------------------------------------------+
character_set_client     utf8
     
|
character_set_connection utf8
     
|
character_set_database   utf8
     
|
character_set_filesystem binary
     
|
character_set_results    utf8
     
|
character_set_server     utf8
     
|
character_set_system     utf8
     
|
character_sets_dir       C:\Program Files\MySQL\MySQL Server 5.1\share\chars
ets
\ |
+--------------------------+----------------------------------------------------
-----+
8 rows in set (0.22 sec


ניתן לראות שחלק ממשתני המערכת השתנו וחלקם לא ונשארו על utf8 (ואני לא מדבר על אלה הקשורים לחיבור עכשיו כמו character_set_connection ו haracter_set_results).
_____________________________________
עידן


מתכנת בסביבת הWEB בעיקר

תגובה ללא ציטוט תגובה עם ציטוט חזרה לפורום
תגובה

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

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

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

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



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

הדף נוצר ב 0.05 שניות עם 12 שאילתות

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

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