עבור לתוכן

שאלה על PHP והשוואת נתונים מול בסיס נתונים

Featured Replies

פורסם

שלום,

איך אפשר להשוות בין משתנה לבין נתון בטבלת נתונים db... נניח יש לי:

$var = shuki

ויש לי טבלה בבסיס נתונים בשם users ואני רוצה לבדוק אם בשדה name שבטבלה usrers מופיע בשורה כלשהי "shuki". איך אפשר לעשות זאת?

תודה מראש.

פורסם

אם אתה יודע SQL אז זה שאילתת SELECT WHERE פשוטה.. אם אתה לא יודע SQL, תלמד, זה יפתור הרבה בעיות..

לשאילתה אתה עושה mysql_num_rows ובודק אם זה גדול או שווה ל-1.

פורסם

מה בידיוק אתה רוצה לעשות?

יש פעמים שצריך לעשות את זה דרך הSQL(לבחור רשומות מסויימות), ופעמים שצריך לבצע את זה דרך קוד הPHP עצמו(לדוגמא - אם יש מנהל, אתה רוצה לתת לו צבע שונה).

פורסם
  • מחבר

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

לפי מה שידוע לי, SELECT WHERE בוחר לי נתונים בהתאם למה שמוגדר בWHERE ואני רוצה לבדוק... מן, לבצע חיפוש בטבלה. חשבתי אולי זה משהו עם לולאה while, כאשר אני מציג את כל התוכן של הטבלה ואז מגדיר תנאים שאם מה שהוכנס בטופס, מופיע במה שהתבצע בלולאה, אז יתבצע משהו, אבל אין לי מושג איך לעשות את זה.

פורסם

בשביל לעשות לוגאין, אתה צריך לשלוף את הרשומה של המשתמש מהטבלה ע"י שאילתת הSQL הבאה:

select password from users where username = 'inserted_user_name'

שים לב שאתה צריך להחליף את ה- inserted_user_name בשם שהוא הכניס(ע"י שרשור המחרוזות). אחרי שהשגת את הסיסמא, אתה צריך לבדוק האם הסיסמא שהוא הכניס שווה לזו שקיימת במס הנתונים(לפי השליפה).

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

פורסם

אם הבנתי נכון, בעזרת WHERE תשלוף את כל השורות שיש בהם את מה שאתה מחפש ואז תבדוק אם קיים מידע כזה בכלל. משהו כזה:

$q = mysql_query("Select users From TableName Where users='$info'")
//TableName - שם הטבלה
//users - שם העמודה
//$info - הנתון שאתה רוצה לבדוק
if(mysql_num_rows($q) >= 1)
{
//אם נמצא שורה עם מה שאתה רוצה למצוא
}
else
{
//אם לא נמצא מה שאתה מחפש
}

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

הינה, זה מה שאני רוצה לדעת איך עושים... החלק של $_REQUIRE אני מכיר, אבל הקטע עם הבדיקה אני לא מבין איך לעשות... אודה לך מאוד אם תוכל להסביר לי.

עריכה:

משום מה לא שמתי לב לתגובה של Yoav... זאת הבדיקה שצריך לעשות, אם המידע שהמשתמש הקיש נמצא בטבלה, נכון? (זה כניראה מה שהייתי צריך, תודה לכם).

פורסם

בהחלט. רק שים לב לשנות את שם הטבלה והעמודה =]

http://il.php.net/manual/en/function.mysql-affected-rows.php

יש שם רשימה של כל הפונקציות של mysql ב-PHP מצד שמאל. שימושי ביותר (במקרה זו גם הפונקציה שבה אני השתמשתי :P)

ארכיון

דיון זה הועבר לארכיון ולא ניתן להוסיף בו תגובות חדשות.

דיונים חדשים