עבור לתוכן

סריקת מסד נתונים בasp

Featured Replies

פורסם

אני רוצה לבדוק בדף הרשמה כלשהוא אם שם המשתמש שמישהו הזין לשדה כבר נמצא במסד הנתונים

איך אני עושה את זה?

פורסם

אתה צריך את השורת sql

SELECT userID FROM UsersTBL WHERE username=username

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

פורסם

זה לא שונה מNULL. הוא צריך לבדוק אם קבוצת הרשומות שהוחזרו לשאילתה הזו היא ריקה ע"י rs.eof ישר אחרי ביצוע שהאילתה. זה מחזיר TRUE עבור קבוצת רשומות ריקה, וFALSE עבור קבוצת רשומות ללא ריקה. אתה יכול גם לבדוק זאת ע"י recordcount, אבל זה כבר תלוי באופן שפתחת את קבוצת הרשומות.

פורסם
  • מחבר

אני משתמש באקסס לא בסקל

וניסתי לעשות באקסס את הקוד הבא ולא הצלחתי..

<%

set con=server.createobject("adodb.connection")

set rs=server.createobject("adodb.recordset")

path=server.mappath("isrdx_db.mdb")

con.connectionstring="provider=microsoft.jet.oledb.4.0;data source="&path&";"

con.open

name=Request.QueryString("user_name")

rs.open "select * from users where user_name='"&name&"'",con,1,1

IF rs.eof THEN

rs.close

set con=nothing

%>

<script> alert("שם המשתמש שהכנסת כבר תפוס,בחר שם משתמש אחר");

return false;

</script>

<%

response.redirect "reg.asp"

end if

%>

פורסם

תנסה if not rs.eof then

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

פורסם

הרבה יותר יעיל ומהיר אם תריץ את הפקודה שעובדת גם ב- Access

"SELECT COUNT(ID) FROM Users WHERE USERNAME = '" + username + "'"

התוצאה תמיד תיהיה ב- אינדקס 0 של האובייקט Recordset כך שתוכל לבצע את הבדיקה כמו משהו כזה

if rs.Fields(0) = 0 then
'user does not exists
else
'user exists

פורסם

שים לב אבל, שעבור חיבור לאתר(פעולת login) עדיף להשתמש בשיטה השניה, מכיוון שהיא תחזיר גם את הסיסמא.

ארכיון

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

דיונים חדשים