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

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



  #1  
ישן 28-02-2005, 15:55
  aXon aXon אינו מחובר  
 
חבר מתאריך: 25.10.04
הודעות: 587

ציטוט:
במקור נכתב על ידי דקל
להסביר למה הוא קיבל את השגיאה הזאת
קודם כל - הסבר בנוגע לאופרטור @. מה שהאופרטור הזה עושה זה "בולע" לתוכו כל שגיאה שקוראת בזמן ריצה (לא שגיאת קוד). לדוגמא עבור הקוד הבא:
קוד PHP:
 echo @(15/0); 
לא תקבל שגיאה של חילוק ב-0 (כיוון שהשגיאה "נבלעת" ע"י ה-@). לפרטים נוספים קרא כאן. בנוגע לתגובה ש"אם זה לא קריטי אז שהוא לא יודיע על שגיאה", זה לא נכון... חילוק ב-0 זאת שגיאה קריטית, ובכל זאת אין הודעה על שגיאה.
ועכשיו בחזרה לשאלה
אחד מסוגי השגיאות שPHP מודיעה לנו עליהם הוא משתנה שלא מוגדר. למשל, אם תריץ את השורה הבאה:
קוד PHP:
 echo $a
(מבלי שהגדרת קודם לכן את המשתנה a$) וPHP תוגדר להוציא את כל השגיאות, אתה תקבל את השגיאה: Undefined variable, כיוון שהמשתנה a$ לא הוגדר.
מעבר להגדרה של משתנים יש הגדרה של מפתחות במערך (index). אם למשל תריץ את הקוד הבא:
קוד PHP:
 error_reporting(2047);
$a = array();
echo 
$a['b']; 
(שים לב שהשורה הראשונה אחראית על הצגת כל השגיאות...) אתה תקבל את השגיאה Undefined index. המשתנה a$ מוגדר להיות מערך, אולם בשום מקום לא הגדרנו את ['a['b$, ולכן האינדקס b לא קיים.
השגיאה שאתה מקבל (כאן אני מנחש כי לא כתבת שום קוד) היא בנוגע לאחד האינדקסים שבמערך GET_$. מה שאתה מנסה לעשות (אם הניחוש שלי נכון) זה לקחת את ['GET['do_$ או משתנה אחר משורת הכתובת, אולם המשתנה לא מוגדר, ולכן אתה מקבל שגיאה.
הפיתרון הוא לבדוק האם קיים האינדקס במערך באופן הבא:
קוד PHP:
 if(array_key_exists('do',$_GET))
    
$do $_GET['do']; 
שים לב שבצורה הזאת אתה לא מקבל שום שגיאה, וזאת גם הצורה הנכונה לבצע את הדברים
אם משהו לא מובן אתה מוזמן לשאול.

בברכה, דקל

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

אם תהיה לי בעיה, אני ארשום פה את השגיאה
תודה רבה על הכל !

עריכה:
הצלחתי !!!
תודה רבה על הכל

מה הבעיה ?

נערך לאחרונה ע"י aXon בתאריך 28-02-2005 בשעה 16:15.
תגובה ללא ציטוט תגובה עם ציטוט חזרה לפורום
תגובה

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

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

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

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



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

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

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

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