![]() |
שאלה, PHP שליפה מוזרה \:
אני שולף נתונים ע"י תאריך ושעה בסדר יורד (DESC)
מה שמתאחסן בתאריך ושעה, זה: PHP קוד:
בקיצור ולעניין, עד שנת 2010 הכל היה בסדר :) הנתונים היו מוצגים בסדר הנכון (סדר יורד) לפי התאריך והשעה . אבל מאז שנת 2010, כל הנתונים החדשים שהוזנו, הפכו להיות אחרונים ובסוף. הם מוצגים גם בסדר, אבל הבעיה היחידה היא, שבגלל השנה, הם עברו להיות בסוף (לאחר הנתונים של 2009) מה הרעיונות וההצעות שלכם כדי שאני אוכל לסדר את זה ? הערות: זו השליפה: PHP קוד:
|
אתה צריך לשלוף בעזרת time
ולא בעזרת DATE |
מה זאת אומרת ?
|
תכניס למסד את הזמן בשניות כמו שאתה מקבל מהפונקציה time() וכשאתה שולף תמיר את זה לפורמט שאתה רוצה,ככה גם תוכל לשנות את הפורמט של הזמן בעתיד אם תרצה ולא תצטרך לשנות את כל המסד
|
בוא קבל...
כיוון שאתה מכניס בסדר כרונולוגי ואני מניח שעמודת ה ID היא ה PRIMARY_KEY שגדל כל הזמן באחד לכן כדי לסדר לפי תאריך אתה יכול לסדר לפי ID באופן הבא PHP קוד:
|
כן לפי id אני יודע שזה יעבוד טוב ..
טוף, בנתיים נפלוט נתונים לפי ID, שאלה, במידה ואני עובד עם הפונקציה time(), איך אני יכול להמיר את זה לפורמט שאני רוצה ? \: |
פשוט מאוד , בצורה הבאה:
ציטוט:
|
אוקי, נניח שאני עובד בשיטת time
לדוגמא: מה שאני מכניס למסד יהיה PHP קוד:
ובשליפה אני פשוט עושה ככה: PHP קוד:
עכשיו, שאלה נוספת, במידה ואני עובר ל time, יש איזה פונקציה שממירה מהתבנת date שלי, לתבנית של time ? כי כשאני משתמש עם time אז בעצם כל הזמן של מה שנכנס למסד עד עכשיו משתבש, הוא הופך להיות זמן שונה לגמרי. |
שניר, תגדיר את השדה datetime בדאטה בייס כ: DATETIME והערך שתכניס לו הוא: YYYY-MM-DD HH:MM:SS
ואז בשליפה מהמסד נתונים תמשתמש כרגיל ב: HTML קוד:
ORDER BY datetime DESC PHP קוד:
זה עדיף מלראות מספרים בפורמט timestamp.. כפי שחברינו אמרו למעלה שאגב זה אופציה אחת, אבל חשוב גם סדר בדאטה בייס והנוחות שלנו לצפות בנתונים דרך ה phpMyAdmin. ואם אתה רוצה להמיר את כל השדות שיש לך כיום ב datetime לפורמט מסויים, תיצור עוד שדה בטבלה לדוגמה: datetime2 ותעשה לולאה עבור כל הרשומות ותשלוף את השדה datetime ותכניס אותו חזרה ל datetime2 כפי שבחרת, ולאחר מכן פשוט תעיף את השדה datetime ושנה את השם של השדה datetime2 ל datetime. מקווה שהייתי ברור מספיק בהצלחה! :) |
ציטוט:
|
כל הזמנים הם GMT +2. הזמן כעת הוא 19:34. |
מופעל באמצעות VBulletin גרסה 3.8.6
כל הזכויות שמורות ©
כל הזכויות שמורות לסולל יבוא ורשתות (1997) בע"מ