הרשם שאלות ותשובות רשימת חברים לוח שנה הודעות מהיום

חזור   הוסטס - פורום אחסון האתרים הגדול בישראל > עיצוב גראפי, תכנות על כל שפותיו וקידום ושיווק אתרים > פורום תיכנות

   
|!|

השב
 
כלים לאשכול תצורת הצגה
ישן 21-08-12, 15:03   # 11
IgalSt
מנהל פורום, עסק רשום
 
IgalSt's Avatar
 
מיני פרופיל
תאריך הצטרפות: Oct 2005
מיקום: המרכז
גיל: 37
הודעות: 1,432
Send a message via Skype™ to IgalSt

IgalSt לא מחובר  

ציטוט:
נכתב במקור על ידי איציק ברבי צפה בהודעה
אני מכיר את זה,
במקרה הזה אני צריך אותם ככה.
אם אתה מגיע למצב שאתה צריך אותם "ככה", אז כנראה שמשהו בארכיטקטורה שלך לא נכון.
זה ממש bad practice לשמור מידע בצורה הזאת, בין היתר מאחר ואתה מבזבז מקום בדיסק, מתקשה לבצע שאילתות יעילות (השאילתות שהציגו לך כאן מאוד מאוד מאוד לא מומלצות) וברגע שכמות הבקשות ל-DB תתחיל לעלות תחווה איטיות בקבלת תשובה לשאילתות שלך ואף קריסות.

כמו שרבים המליצו לך כבר, מאוד מומלץ להחזיק את הערך הזה בתא ייעודי: בין אם ע"י timestamp, שדה date time או אפילו עמודה ייעודית לשעה ועמודה ייעודית לתאריך.
  Reply With Quote
ישן 21-08-12, 15:16   # 12
איציק ברבי
עסק רשום [?]
 
מיני פרופיל
תאריך הצטרפות: Feb 2011
הודעות: 970

איציק ברבי לא מחובר  

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

איציק ברבי - שירות לקוחות
כתובת אתר: http://build-net.co.il/
איימל: Support@build-net.co.il
טלפון: 052-3937296.
  Reply With Quote
ישן 21-08-12, 15:31   # 13
אדיר
עסק רשום [?]
 
מיני פרופיל
תאריך הצטרפות: Mar 2008
מיקום: אשקלון
הודעות: 1,714

אדיר לא מחובר  

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

שאלה נוספת -
יש לי ערך כזה
xx:xx:xxxx
אני רוצה לפצל את הxx:xx הראשונים סוג של explode אני מעוניין לבצע את זה דרך SQL.
קראתי את הנושא, הפתרון שהוצע לך לא מומלץ בכלל ולכן העלתי פתרון חלופי טוב יותר.

העובדה ש- "ככה זה" אצלך לא אומרת ש- "ככה זה" אמור להיות.
אתה עושה את זה בצורה לא נכונה וזאת גם אחת הסיבות שזה לא עובד לך כמו שצריך.
העובדה שהמידע מוצג בצורה מסויימת לא אומרת שככה הוא גם צריך להיות שמור במסד הנתונים.

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

תאמין לי שהשרת "יתעייף" הרבה יותר אם תעשה את זה כמו שאתה מתכנן לעשות את זה עכשיו מאשר אם תעשה את זה כמו שצריך לעשות את זה.

Last edited by אדיר; 21-08-12 at 15:52..
  Reply With Quote
ישן 21-08-12, 17:13   # 14
איציק ברבי
עסק רשום [?]
 
מיני פרופיל
תאריך הצטרפות: Feb 2011
הודעות: 970

איציק ברבי לא מחובר  

ציטוט:
נכתב במקור על ידי xPerfection צפה בהודעה
קראתי את הנושא, הפתרון שהוצע לך לא מומלץ בכלל ולכן העלתי פתרון חלופי טוב יותר.

העובדה ש- "ככה זה" אצלך לא אומרת ש- "ככה זה" אמור להיות.
אתה עושה את זה בצורה לא נכונה וזאת גם אחת הסיבות שזה לא עובד לך כמו שצריך.
העובדה שהמידע מוצג בצורה מסויימת לא אומרת שככה הוא גם צריך להיות שמור במסד הנתונים.

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

תאמין לי שהשרת "יתעייף" הרבה יותר אם תעשה את זה כמו שאתה מתכנן לעשות את זה עכשיו מאשר אם תעשה את זה כמו שצריך לעשות את זה.
אדיר, חבר,
הבעיה הראשונה נפתרה. תסתכל בהודעה הראשונה שלי(ערך השדה היה TEXT במקום TIME)
וסידרתי זה.
עכשיו אני בבעיה אחרת.
אני מאחסן נתונים בצורה כזאת: xx*xx*xx*xx
אני מעוניין להשוואות את הנתונים הכוונה בmysql_num_rows
אני לא רוצה להתעסק בהוצאה מהמסד וכ'ו..

אני רוצה לציין שלא מדובר בשעות\תאריכים אלא במידע פשוט.
__________________

איציק ברבי - שירות לקוחות
כתובת אתר: http://build-net.co.il/
איימל: Support@build-net.co.il
טלפון: 052-3937296.
  Reply With Quote
ישן 21-08-12, 17:28   # 15
IgalSt
מנהל פורום, עסק רשום
 
IgalSt's Avatar
 
מיני פרופיל
תאריך הצטרפות: Oct 2005
מיקום: המרכז
גיל: 37
הודעות: 1,432
Send a message via Skype™ to IgalSt

IgalSt לא מחובר  

ציטוט:
נכתב במקור על ידי איציק ברבי צפה בהודעה
אדיר, חבר,
הבעיה הראשונה נפתרה. תסתכל בהודעה הראשונה שלי(ערך השדה היה TEXT במקום TIME)
וסידרתי זה.
עכשיו אני בבעיה אחרת.
אני מאחסן נתונים בצורה כזאת: xx*xx*xx*xx
אני מעוניין להשוואות את הנתונים הכוונה בmysql_num_rows
אני לא רוצה להתעסק בהוצאה מהמסד וכ'ו..

אני רוצה לציין שלא מדובר בשעות\תאריכים אלא במידע פשוט.
שוב, גם במקרה הזה, בסבירות גבוהה מאוד (אחרי הכל אתה לא מספר מה הנתון עצמו) יהיה נכון לשמור כל xx כזה בשדה משלו בטבלה בבסיס הנתונים.
החיבור בצד שרת הוא טרוויאלי כאשר יש לך את ה-data מה-DB.
מנגד אתה מרוויח את היכולת לבצע שאילתות בהתאם לחיתוכים שאתה רוצה היום, וגם בעתיד.

לא סתם כולנו ממליצים לך בחום לשמור את המידע בצורה הנכונה ולא להמציא תבניות שרק אתה מבין ולשמור את ה-DATA בטבלה ככה. כל אתה ממליץ את זה מניסיון אישי שלו.
לדוגמה אני הייתי צריך כמה פעמים להריץ סקריפטים על הרשומות שממירות מידע שנשמר בפורמט לא נכון ומחלק אותו לעמודות. בקיצור, אתה צריך להתסכל על המצב עם ראיה לעתיד, ולא רק במטרה לסיים את המשימה שלך עכשיו.
  Reply With Quote
ישן 21-08-12, 17:58   # 16
איציק ברבי
עסק רשום [?]
 
מיני פרופיל
תאריך הצטרפות: Feb 2011
הודעות: 970

איציק ברבי לא מחובר  

ציטוט:
נכתב במקור על ידי IgalSt צפה בהודעה
שוב, גם במקרה הזה, בסבירות גבוהה מאוד (אחרי הכל אתה לא מספר מה הנתון עצמו) יהיה נכון לשמור כל xx כזה בשדה משלו בטבלה בבסיס הנתונים.
החיבור בצד שרת הוא טרוויאלי כאשר יש לך את ה-data מה-DB.
מנגד אתה מרוויח את היכולת לבצע שאילתות בהתאם לחיתוכים שאתה רוצה היום, וגם בעתיד.

לא סתם כולנו ממליצים לך בחום לשמור את המידע בצורה הנכונה ולא להמציא תבניות שרק אתה מבין ולשמור את ה-DATA בטבלה ככה. כל אתה ממליץ את זה מניסיון אישי שלו.
לדוגמה אני הייתי צריך כמה פעמים להריץ סקריפטים על הרשומות שממירות מידע שנשמר בפורמט לא נכון ומחלק אותו לעמודות. בקיצור, אתה צריך להתסכל על המצב עם ראיה לעתיד, ולא רק במטרה לסיים את המשימה שלך עכשיו.
אני לא רוצה להישמע כפוי טובה, אבל כנראה את התשובה שלי אני לא אקבל.
אני מסביר שוב ושוב שמדובר במחרוזת רגילה.
ששומרת 3 נתונים
xx|xx|xx
המופרדים באמצעות |
לצורך השוואה אני צריך את ה-xx|xx הראשונים(mysql_num_rows)
אין שום סיבה שאני אצטרך לשמור את הנתונים האלו בעמודות נפרדות.
__________________

איציק ברבי - שירות לקוחות
כתובת אתר: http://build-net.co.il/
איימל: Support@build-net.co.il
טלפון: 052-3937296.
  Reply With Quote
ישן 21-08-12, 18:11   # 17
GNS
חבר בקהילה
 
מיני פרופיל
תאריך הצטרפות: Jun 2012
הודעות: 276

GNS לא מחובר  

תשתמש בSPLIT או SUBSTRING בתוך השאילתה שלך.. חפש בגוגל.

וגם אני ממליץ לך לסדר את הDB שלך.. הייתי כמוך עקשן ומתעלם מהערות עד שאתר אחד שלי נהיה גדול עם המון כניסות והתחיל להיות ממש ממש איטי, חשבתי שזה בעיה בשרת - עברתי לNGINX לא עזר - שידרגתי את השרת (היה כרוך באינטגרציות שבהם החזקתי 2 שרתים בו"ז) וגם לא עזר - בסוף הסתבר שהשאילתות שלי היו כל כך גרועות הDB חטף DEADLOCK על ימין ועל שמאל וזה תקע את האתר.

לא חוכמה ללמוד מטעויות שלך - החוכמה האמיתי היא ללמוד גם מטעויות של אחרים.
בהצלחה.

Last edited by GNS; 21-08-12 at 18:13..
  Reply With Quote
ישן 21-08-12, 22:11   # 18
איציק ברבי
עסק רשום [?]
 
מיני פרופיל
תאריך הצטרפות: Feb 2011
הודעות: 970

איציק ברבי לא מחובר  

ציטוט:
נכתב במקור על ידי GNS צפה בהודעה
תשתמש בSPLIT או SUBSTRING בתוך השאילתה שלך.. חפש בגוגל.

וגם אני ממליץ לך לסדר את הDB שלך.. הייתי כמוך עקשן ומתעלם מהערות עד שאתר אחד שלי נהיה גדול עם המון כניסות והתחיל להיות ממש ממש איטי, חשבתי שזה בעיה בשרת - עברתי לNGINX לא עזר - שידרגתי את השרת (היה כרוך באינטגרציות שבהם החזקתי 2 שרתים בו"ז) וגם לא עזר - בסוף הסתבר שהשאילתות שלי היו כל כך גרועות הDB חטף DEADLOCK על ימין ועל שמאל וזה תקע את האתר.

לא חוכמה ללמוד מטעויות שלך - החוכמה האמיתי היא ללמוד גם מטעויות של אחרים.
בהצלחה.
GNS אני מחפש בגוגל על פוקנציות הללו, אבל שום דבר לא ענה לי על השאלה לחלוטין.
אולי תוכל לכוון אותי בצורה שהיא?
__________________

איציק ברבי - שירות לקוחות
כתובת אתר: http://build-net.co.il/
איימל: Support@build-net.co.il
טלפון: 052-3937296.
  Reply With Quote
ישן 21-08-12, 22:17   # 19
בניה
משתמש - היכל התהילה
 
מיני פרופיל
תאריך הצטרפות: Oct 2005
מיקום: נחושה
הודעות: 3,434

בניה לא מחובר  

MYSQL String Functions
http://dev.mysql.com/doc/refman/5.0/...functions.html
SUBSTR() Return the substring as specified
SUBSTRING_INDEX() Return a substring from a string before the specified number of occurrences of the delimiter
SUBSTRING() Return the substring as specified

ועוד רבות אחרות
  Reply With Quote
ישן 21-08-12, 22:33   # 20
איציק ברבי
עסק רשום [?]
 
מיני פרופיל
תאריך הצטרפות: Feb 2011
הודעות: 970

איציק ברבי לא מחובר  

ציטוט:
נכתב במקור על ידי בניה צפה בהודעה
MYSQL String Functions
http://dev.mysql.com/doc/refman/5.0/...functions.html
SUBSTR() Return the substring as specified
SUBSTRING_INDEX() Return a substring from a string before the specified number of occurrences of the delimiter
SUBSTRING() Return the substring as specified

ועוד רבות אחרות
תודה רבה, זה מה שהייתי צריך.
__________________

איציק ברבי - שירות לקוחות
כתובת אתר: http://build-net.co.il/
איימל: Support@build-net.co.il
טלפון: 052-3937296.
  Reply With Quote
השב

חברים פעילים הצופים באשכול זה: 1 (0 חברים ו- 1 אורחים)
 


חוקי פירסום
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is מופעל
סמיילים הם מופעל
[IMG] קוד מופעל
קוד HTML מכובה

קפיצה לפורום


כל הזמנים הם GMT +2. הזמן כעת הוא 07:03.

מופעל באמצעות VBulletin גרסה 3.8.6
כל הזכויות שמורות ©
כל הזכויות שמורות לסולל יבוא ורשתות (1997) בע"מ