שלח תשובה

זירת השאלות

313
צפיות
14
תשובות

יש לי בעיה קטנה…

,‏ 29 בספטמבר, 2004

שלום לכולם…

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

אז בבקשה… אתם יכולים לעזור לי???

                      בתודה, איליה

תגיות:

14 תשובות

  1. BuildHome הגיב:

    שאילתה פשוטה
    SQL = "SELECT password FROM users WHERE email='"&Request.Form("email")&"'"
    rs.Open SQL, Conn
    If not rs.EOF Then
       Response.Write "סיסמתך היא: " & rs("password")
    Else
        Response.Write "כתובת הדוא""ל שצויינה לא קיימת במסד"
    End If
    rs.Close

  2. iliakap2002 הגיב:

    עוד שאלה
    שלום לכולם…
    יש לי את הקוד:


    Set rs = Server.CreateObject("ADODB.Recordset")
    SQL = "SELECT pwd, usrname FROM users WHERE mail='"&Request.Form("email")&"'"
    rs.Open SQL, conn, 1, 1

    ואני מקבל פה:


    Error Type:
    Microsoft OLE DB Provider for ODBC Drivers (0x80040E21)
    ODBC driver does not support the requested properties.
    /maarechet/data/forgot_send.asp, line 23

    אני לא מבין למה לעזעזל???

  3. iliakap2002 הגיב:

    סליחה אבל…
    סליחה אבל… חיבור מה???

  4. BuildHome הגיב:

    חיבור JET
    תחליף את החיבור שלך לזה:
    Conn.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & Server.MapPath("db.mdb")
    כמובן ש-db.mdb הינו שם מסד הנתונים שלך.

  5. iliakap2002 הגיב:

    תודה וגם…
    מה ההבדל בין 2 החיבורים השונים???
    אף פעם לא שמתי לב שיש 2 שונים…

  6. iliakap2002 הגיב:

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

    יש לי את השגיאה:


    Error Type:
    Microsoft JET Database Engine (0x80040E10)
    No value given for one or more required parameters.
    /maarechet/data/forgot_send.asp, line 23

    וזה נובע מזה שעכשיו עשיתי חיבור JET אבל יצירת הרקורדסט נישארה אותו הדבר…
    מישהו יכול לעזור???

  7. BuildHome הגיב:

    מספר דברים
    1. למה לא שירשרת את הודעתך להודעה הקיימת?? קרא תקנון פורום.

    2. מה בדיוק לא הסבירו היטב במדריך באתר? אין לי מושג על מה אתה מדבר.

    3. תציג את שורות 20-26 ותדגיש כאן בפורום את שורה 23.

  8. iliakap2002 הגיב:

    הנה…
    את השגיאה ראית…

    אז הנה בקשה… הקוד…


    dim M, mail,  found, usr, pwd

    found = 0
    mail = request.form("email")

    Set conn = Server.CreateObject("ADODB.Connection")
    Conn.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & Server.MapPath("m.mdb")

    Set rs = Server.CreateObject("ADODB.Recordset")
    SQL = "SELECT pwd, usrname FROM users WHERE mail='"&Request.Form("email")&"'"
    rs.Open SQL, conn, 1, 1

    for index=1 to rs.recordcount
    if mail = rs("email") then found = 1
    rs.movenext
    next

    if found = 1 then

    שורה 23 מודגשת אצלי…

    ובמדריך באתר לא מוסבר על 2 סוגי חיבורים לבסיס הנתונים…
    מה השוני…
    למה משתמשים בזה למה בשני…

  9. BuildHome הגיב:

    אוקי
    1. מאמר בנושא חיבורים למסד הנתונים.

    2. בשאילתה אתה שולף רק את השם משתמש וסיסמא אך אתה מנסה להשתמש גם באימייל. תוסיף אותו לשאילתה.

  10. iliakap2002 הגיב:

    תודה רבה…
    תודה רבה לך….
    באמת תודה…

  11. ניר טייב הגיב:


    באדיבות ילד כחול
    הראשון זה ODBC והשני זה OLEDB.
    מומלץ להתחבר ל-OLEDB ישירות לביצועים טובים יותר,
    אתה יכול לקרוא את המאמר הבא בכדי להבין למה:

    http://www.4guysfromrolla.com/webtech/063099-1.shtml

    בקצרה, ODBC הוא תקן API יונברסלי להתחברות למסדי נתונים המכיל הרבה קריאות ב-low-level והיה קשה לפיתוח איתו.
    מייקרוספוט פיתחו פתרון לסוגייה זו בשם DAO אשר ברבות הימים הפכה ל-ADO, המוכר לנו, המספק אובייקטים ב-high-level לנתונים.
    לאחר מכן מייקרוסופט הציגה את ה-OLEDB שהוא רכיב COM המספק גישה לכל סוגי הנתונים אפילו לנתונים מנותקים ( לדוגמא, ניתן לצפות ב-snapshot של מסד הנתונים מהפעם האחרונה שבוצע חיבור אליו ).
    חיבור ישיר, אם כן, ל-OLEDB היושב בין שכבת ה-ODBC לאפליקציה, מספק שיפור משמעותי בביצועים.

שלח תשובה