
11-02-2006, 15:52
|
 |
|
|
חבר מתאריך: 02.10.05
הודעות: 2,355
|
|
1)
ציטוט:
in C:\wamp\www\ShayLogs\admin\login.php on line 2090200600
|
פששש... כתבת הרבה...
2)
הבעיה שאתה מציג קוראת בגלל שה- Header נשלח כבר...
מה שקורא זה שהשתמשת בפונקציה virtual, ששולחת בקשה לתוכנת שרת (שים לבת זה יעבוד רק אם תוכנת השרת היא Apache... בגלל שהבקשה היא לשרת, בקריאה לפונקציה שולחת Header וזה לא טוב... אפשר להשתמש ב- ob_start אבל אני ממליץ כמה שפחות להשתמש בפונקציה בגלל שקוד יהיה יותר יעיל בלי הפונקציה והכל זה עניין של תכנון הקוד.
מה שאתה בעצם מנסה זה לדחוף לקובץ קוד (אני כבר מנחש שזה התחברות למסד נתונים) שזה טוב...
אבל אני ממליץ לך להשתמש בפונקציה include...
3)
אתה משתמש גם ב- Post וגם ב- Get... אפילו אם זה עובד, זה לא מומלץ...
4)
יש קטעים בהם אתה מגדיר משתנים מיותרים, לצערי זאת דרך עבודה נפוצה.
לצערי בגלל שאלה הרגלי תכנות לא טובים, יש מעט את עלייתו של הדף. לא מרגישים בזה כי מדובר בהבדל של אלפיות המיקרו שניות, אני לא פרנואיד אבל זה סתם בזבוז לא חבל?
5)
קוד PHP:
$LoginRS__query=sprintf("SELECT username_usr, password_usr, level_usr FROM shaylogs_user_usr WHERE username_usr='%s' AND password_usr='%s'", get_magic_quotes_gpc() ? $loginUsername : addslashes($loginUsername), get_magic_quotes_gpc() ? $password : addslashes($password))
התנאי פה הוא גם בזבוז, כי גם אם תעשה addslashes למחרוזת שכבר עברה את התהליך, לא יקרה כלום...
בנוסף sprintf הוא גם בזבוז בגלל שאפשר לשרשר משתנים..
דוגמא:
קוד PHP:
"SELECT `username_usr`, `password_usr`, `level_usr` FROM `shaylogs_user_usr` WHERE `username_usr`='".$loginUsername."' AND password_usr='".$password."'"
( הוספתי רווחים וכו' בשביל שיהיה לך יותר נוח לקרוא)
אפשר בשרשור גם לשים פונקציות... למשל:
קוד PHP:
"SELECT `username_usr`, `password_usr`, `level_usr` FROM `shaylogs_user_usr` WHERE `username_usr`='".addslashes($loginUsername)."' AND password_usr='".addslashes($password)."'"
זהו לעכשיו...
_____________________________________
|