View Single Post
ישן 24-08-09, 22:17   # 1
Daniel
אחראי פורום
 
מיני פרופיל
תאריך הצטרפות: Mar 2007
הודעות: 2,875

Daniel לא מחובר  

PHP מתריע על כל שגיאה שיש בקוד.

השתמשת בפונקציה שלא קיימת? בום - שגיאה.
קראת לפונקציה עם פחות מידי משתנים? בום, שגיאה.

אני לא אמשיך לתת דוגמאות, אבל ניתן עוד 2 אחרונות.

השתמשת בקוד הבא:
HTML קוד:
<?php
$i = 0;
while($i < 10) {
$text .= "test";
$i++;
}
echo $text;
?>
בום - שגיאה.
רגע! חלקיכם תגידו,
אין שום בעייה בקוד!.

וזאת טעות...

אתה השתמשת במשתמש $text בלי להגדיר אותו!
היית צריך להוסיף למעלה, מעל ה-while,
HTML קוד:
$text = "";
בקיצור - אי אפשר להשתמש במשתנה לפני שהגדרת אותו.


עוד דוגמא.
HTML קוד:
if($_POST[message] != "") {
// do something
}
יש כאן 2 טעויות.

דבר ראשון - השתמשנו במשתנה שלא בטוח שהוא קיים בכלל - היינו צריכים לבדוק if(isset($_POST[...])) כדי לגלות האם הוא נשלח וקיים בכלל.

דבר שני - מה זה? מה זה המשתנה
HTML קוד:
$_POST[message]
?
היינו צריכים לכתוב
HTML קוד:
$_POST['message']

אני לא הולך להסביר למה כמה איך והיכן עכשיו בפרוטרוט,
אבל, בהרבה מקומות אומרים לשרת "תעשה טובה - תתעלם מהשגיאות האלה. למה שלנו יהיה אכפת?" (...)

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

לעומת זאת - כשאתה מריץ את האתר - אתה צריך להגיד לו - "תעשה טובה - אל תראה שום שגיאה. אף לא אחת." (אלא תשמור לי אותם בקובץ שרק לי תיהיה גישה אליו).


חצי עמוד על PHP.

Last edited by Daniel; 24-08-09 at 22:46..