14-04-2006, 01:37
|
|
|
חבר מתאריך: 25.08.03
הודעות: 9,114
|
|
כמו בכל דבר, גם כאן מי שמתחיל לא מבחין אף לא בדברים כל כך קטנים, ובעוד מספר שורות כשאסביר לך מה הבעיה תראה עד כמה באמת פשוט להבחין בזה, לכן חשוב גם לנסות לבד, כי לאחר שמגלים פעם אחת לבד שוב לא צריך יותר עזרה בבעיה זו, לכן בהרבה מקרים תעזר יותר כשרק יתנו לך את הכיוון...
אתחיל מהסבר ההודעת שגיאה, למרות שהפעם השגיאה לא קשורה ישירות להסבר זה.
ההודעת שגיאה אומרת שהפונקציה שאמורה לנתח את תוצאות השאילתה כלל לא קיבלה משתנה המכיל ערך שהוא תוצאת שאילתה, זאת אומרת שלמרות שצפית שהמשתנה $result יכיל את תוצאות השאילתה הוא לא מכיל משאב מסוג תוצאת שאילתה. כמובן שכעת עליך להבין מדוע.
בדרך כלל זה כי השאילתה שגויה, ולכן הפונקציה מסד הנתונים לא החזיר תוצאות לשאילתה, אלא הודעת שגיאה שאותה תוכל לקרוא באמצעות הפונקציה mysql_error.
באופן טבעי אתה אמור לגשת לשורה של הגדרת המשתנה $result כדי לראות אם כתבת זאת נכון, לאחר מכן אתה גם ניגש לשאילתה ובודק אם התחביר נכון.
במקרה הזה כמו שניתן להבחין לפי צבעי הקוד, פשוט שכחת "לסגור" במרכאה את מחרוזת השאילתה, לכן כל השורה שלאחריה נכנסת גם כמחרוזת ולא כקוד שאמור להתבצע, לכן כלל לא התבצעה הגשת שאילתה, לכן גם לא קיבלת תשובה, ומכאן ההסבר למה אין לך תוצאות לשאילתה שכלל לא הוגשה.
עיצה אליך ולכל החדשים
כולנו כאן היינו פעם מתחילים... קל מאד לקרוא, ולכתוב מיד הודעה לבקשת הסבר, אך היות ורנאה שאתה באמת רוצה ללמוד ולהבין, אני מציע לך להקדיש יותר זמן להבנת השגיאה, גם כשכבר נראה לך שלא תבין יותר ולא תעזר ללא עזרה נוספת. נסה ותבין למה אני מתכוון.
בהצלחה
|