פורסם 2010 בפברואר 2815 שנים היי אשמח לקבל קצת עזרה, אני בשלבי התלמדות ב PHP .....בניתי טופס התחברות ל ADMINהפונקצית התחברות נראית ככהfunction login() { $username = mysql_real_escape_string($_POST['username']); $password = mysql_real_escape_string($_POST['password']); $check = mysql_query("SELECT * FROM `users` WHERE `username`='{$username}' AND `password`='{$password}' "); $r = mysql_num_rows($check); if($r>0) { echo "OK"; } else { echo "NOT OK"; } }הבעיה היא שברגע שאני נכנס לעמוד התחברות זה רושם לי כבר מההתחלה, מעל הטופס: NOT OK. אם אני רושם פרטים נכונים ומזדהה כ ADMIN הוא רושם לי OK ונעלם ה NOT OK.למישהו יש רעיון למה הוא רושם לי מההתחלה NOT OK?תודה
פורסם 2010 בפברואר 2815 שנים יש לך המון גרשיים מיותרים בתוך השאילתא. אתה לא צריך שום גרשיים חוץ מסביב ה-username$ ו-password$.
פורסם 2010 בפברואר 2815 שנים הפונקציה פשוט מאמתת את הפרטים של ההתחברות ואם הם נכונים היא מציגה OK ואם לא היא מציגה NOT OK .אם אתה רוצה שהפונקציה לא תוציא פלט לפני שאתה שולח את הטופס אתה צריך לבדוק אם נשלח טופס.function login(){ if(!isset($_POST)) return; $username = mysql_real_escape_string($_POST['username']); $password = mysql_real_escape_string($_POST['password']); $check = mysql_query("SELECT * FROM `users` WHERE `username`='{$username}' AND `password`='{$password}' "); $r = mysql_num_rows($check); if($r>0) { echo "OK"; } else { echo "NOT OK"; } }
פורסם 2010 בפברואר 2815 שנים מחבר אוקי תודה רבה!דרך אגב אני רוצה לעשות במקום שירשום OK , שיעשה הפניה לעמוד של המנהלים... אז עשיתיheader('Location: http://www.example.com/');ויש לי שגיאה.מה יכולה להיות הבעיה?Warning: Cannot modify header information - headers already
פורסם 2010 בפברואר 2815 שנים אם אתה מבצע הפניה כזו אסור שיהיה שום פלט לפני כן לדפדפן...אפילו רווח לבן.יש גם מקרים בהם אם אתה משתמש בקידוד UTF8 מתווספת לך אוטומטית תוספת שנקראת BOM ניתן לבטל אותה אם אתה משתמש בתוכנהnotepad++ שד"א אני ממליץ עליה בחום זה יעזור לך מאוד.
פורסם 2010 במרץ 215 שנים מחבר האמת שיש לי עוד שאלה קטנה פתחתי על זה גם דיון ולא כ"כ הבנתי... אז אני אשמח אם תוכל להסביר שאני שולף טקסט מהמסד ומציג באתר הוא מוסיף לי לפני כל " או ' , סלאש (\) הבנתי שיש פונקציה של slashes ולא הבנתי כ"כ איך להשתמש בה. ועוד שאלה קטנה, איך אני יכול למנוע הזרקות SQL וגם למנוע הכנסה של תגיות HTML? תודה טל
פורסם 2010 במרץ 215 שנים מה לא ברור? נתנו לך לינק שמסביר על פונקציה שעושה בדיוק מה שאתה צריך. בכל מקרה, אל תפתח שני דיונים על אותו נושא. אם יש לך שאלה, תשאל שם.ולגבי מניעת HTMLhttp://il.php.net/htmlspecialchars
פורסם 2010 במרץ 215 שנים ולגבי הסלשים:http://il2.php.net/manual/en/function.stripslashes.phpכדאי ללמוד לעבוד עם התיעוד של PHP זה אחד ממקורות המידע הכי חזקים שיש ל PHP..
ארכיון
דיון זה הועבר לארכיון ולא ניתן להוסיף בו תגובות חדשות.