שלח תשובה

זירת השאלות

582
צפיות
59
תשובות

מישהו יכול לעזור לי עם טופס asp ..?

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

קראתי את המדריך באתר על הasp ועכשיו אני רוצה לדעת משהו…איך עושים שיהיה לי באתר דף של הרשמה כזה-
שם משתמש:
אימייל:
סיסמא:

[הירשם]

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

וד"א אני רוצה גם מערכת התחברות וגם שיהיה בצד למעלה שורה שיהיה כתוב בה שלום <%=username%> תודה שהתחברתה…משהו כזה…
בבקשה ותודה מראש לעוזרים…קראתי על הבסיס נתונים ולא הבנתי כל כך..
מאוד יעזור לי אם מישהו יביא לי את הקוד מוכן…תודה

תגיות:

59 תשובות

  1. BuildHome הגיב:

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

    בנוסף, תצטרך ללמוד על קוקיז (עוגיות).

    קרא את תקנון הפורום.
    אגב, עניתי לך כבר ממזמן בתפוז וראית מהי התגובה. כאן זה לא יהיה שונה.

  2. BigNet הגיב:

    אין קוד מוכן ?
    מישהו לא יכול לתת לי קוד מוכן??

  3. BigNet הגיב:

    לעשות טופס אני יודע אבל איך אבל…
    אבל איך אני עושה שמה שאני מכניס בטופס ישלח לדאטא בייס ??

  4. BuildHome הגיב:

    בשביל זה
    תצטרך ללמוד SQL וללמוד את מדריך "עבודה לתכנון DB" באותו המדור.

    הודעה שמסבירה באופן בסיסי כיצד מוסיפים נתונים למסד מטופס:
    https://webmaster.org.il/forums/Message.asp?Id=25887

  5. BigNet הגיב:

    שאלה על טופס התחברות לאתר..
    עשיתי שיוכלו להירשם לאתר ולאחר ההרשמה המידע מגיע אל הדאטא בייס…עכשיו עשיתי טופס של התחברות לאתר..איזה קוד מוסיפים לטופס כדי שהוא יבדוק אם השם משתמש וסיסמא רשומים בדאטא בייס??
    חיפשתי במדריכים כאן לא מצאתי…וגם איך אני עושה שלאחר שמישהו נכנס יהיה כתוב לו "שלום $user, תודה שהתחברתה" ?? ככה ? <%=user%> ??

  6. jonatan44 הגיב:

    אי אפשר
    זה טכנולוגית צד שרת, המידע של ה ASP אפילולא מגיע למחשב שלך.

  7. BigNet הגיב:

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

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

  8. jonatan44 הגיב:

    מדריך ה ASP
    באתר, פרק אחרון יש דוגמה להיתחברות + הרשמה.
    מומלץ לחפש באתר ליפני ששואלים שאלות, תודה.

  9. BigNet הגיב:

    טוב אז ככה..[עזרה]
    זה הדף הראשי ובו בצד יש את חלון ההתחברות
    http://www.t3k.up.co.il
    לאחר שמכניסים את הסיסמא ושם המשתמש אני רוצה שזה יבדוק בדאטא בייס אז הוספתי דף בשם chackuser.asp
    הקוד שלו-
    <%Dim Conn, RS

    Set Conn = Server.CreateObject("ADODB.Connection")
    Set RS = Server.CreateObject("ADODB.Recordset")

    DSNName = "DRIVER=Microsoft Access Driver (*.mdb);DBQ="
    DSNName = DSNName & Server.MapPath("/DeWizard/zip/db2.mdb")
    Conn.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & Server.MapPath("/DeWizard/zip/db2.mdb")

    sql = "SELECT * FROM [users]"

    RS.Open sql, Conn, 3, 3%>

    <%
    login = request.Form("login")
    pass = request.Form("pass")

    set Conn = server.createObject("ADODB.CONNECTION")
    Conn.open connString

    SQL = "SELECT * FROM users WHERE login='" & login & "'"
    SQL = SQL & " AND pass = '" & pass & "'"

    'response.write SQL

    set rs = conn.Execute(SQL)

    if not rs.EOF then
    session("login") = rs("login")
    session("pass") = rs("pass")

    response.redirect "dewizard.asp"

    else
    response.write "<FONT COLOR='red'>User NOT Found !!!</FONT>"
    end if

    conn.close
    %>

    <title>chackuser</title>

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

  10. BuildHome הגיב:

    מספר דברים
    1. תיישר את הקוד לשמאל.
    2. תציג קוד רלוונטי בלבד.
    3. תגדיר "לא פועל". יש שגיאה? משהו?

  11. BigNet הגיב:

    איזה ערכים צריך…
    להכניס בשדות שלפני הsumbit במערכת ההתחברות ??
    [בדאטא בייס Login = שם משתמש, pass = סיסמא]

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

  13. BigNet הגיב:

    בניתי את הקוד יש לי אותו!
    רק תגידו איזה ערכים (vaules) צריך לשים לשדות של הטופס שדרכו מתחברים לאתר??

  14. מה הכוונה 'איזה ערים צריך לשים…'?
    תפרט קצת יותר..

  15. BigNet הגיב:

    בעיה חדשה…=(
    שמתי את הקוד הזה אבל משום מה גם שאני מכניס פרטים נכונים הוא אומר שהשם משתמש והסיסמא לא נכונים


    <%@ Language=VBScript %>
    <%
    If Request("login")<>"" And Request("pass")<>"" Then
       Dim conn, rs, SQLstr, okForProccess
      
       Set conn = Server.CreateObject("ADODB.Connection") 'connection object
       Set rs = Server.CreateObject("ADODB.Recordset") 'recordset object
       conn.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & Server.MapPath("/DeWizard/zip/db2.mdb")

       SQLstr="SELECT id,pass FROM Users "
       SQLstr= SQLstr & "WHERE login='" & Request("login") & "'"    ' SQL query
       rs.Open SQLstr,conn    'oppening the recordset

      
       If Rs.EOF Then 'if there are no corresponding records
         okForProccess=false 'Invalid login
       Else
         If Request("pass")<>rs("pass") Then
               okForProccess=false 'Invalid password
         Else
              okForProccess=true 'valid password
             Session("id") = rs("id")
         End If
       End If

       rs.Close
       conn.Close
       Set rs = Nothing
       Set conn = Nothing

       If okForProccess Then ' both login and password are valid
            Response.Write "<center><FONT COLOR='white'>"    'displaying error message
          Response.Write "ההתחברות הצליחה. המשך גלישה מהנה</FONT></center>"
       Else
          Response.Write "<center><FONT COLOR='white'>"    'displaying error message
          Response.Write "שם משתמש או סיסמא שגויים</FONT></center>"
       End If
    End If
    %>

  16. BuildHome הגיב:

    תעשה את הכל
    ברמת ה-SQL במקום לבדוק את הסיסמא בהמשך הקוד פשוט תבדוק גם אותה בשאילתה.
       SQLstr="SELECT id,pass FROM Users WHERE login='" & Request("login") & "' AND pass='" & Request("pass") & "'"
       rs.Open SQLstr,conn    'oppening the recordset

       If Rs.EOF Then 'if there are no corresponding records
         okForProccess=false 'Invalid login
       else
         okForProccess=true 'valid login
       end if
       rs.close

  17. BigNet הגיב:

    שלחתי בטעות הודעה ריקה -הנה השגיאה
    ADODB.Recordset error '800a0bb9'

    Arguments are of the wrong type, are out of acceptable range, or are in conflict with one another.

    /DeWizard/zip/DeWizard.asp, line 61

  18. BigNet הגיב:

    ד"א זה הקוד


    <%@ Language=VBScript %>
    <%
    If Request("login")<>"" And Request("pass")<>"" Then
       Dim conn, rs, SQLstr, okForProccess
      
       Set conn = Server.CreateObject("ADODB.Connection") 'connection object
       Set rs = Server.CreateObject("ADODB.Recordset") 'recordset object
       conn.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & Server.MapPath("/DeWizard/zip/db2.mdb")

       SSQLstr="SELECT id,pass FROM Users WHERE login='" & Request("login") & "' AND pass='" & Request("pass") & "'"
       rs.Open SQLstr,conn    'oppening the recordset

       If Rs.EOF Then 'if there are no corresponding records
         okForProccess=false 'Invalid login
       else
         okForProccess=true 'valid login
       end if
       rs.close   conn.Close
       Set rs = Nothing
       Set conn = Nothing

       If okForProccess Then ' both login and password are valid
            Response.Write "<center><FONT COLOR='white'>"    'displaying error message
          Response.Write "ההתחברות הצליחה. המשך גלישה מהנה</FONT></center>"
       Else
          Response.Write "<center><FONT COLOR='white'>"    'displaying error message
          Response.Write "  הודעת מערכת: שם משתמש או סיסמא שגויים</FONT></center>"
       End If
    End If
    %>

    השורה 61 מודגשת

  19. BuildHome הגיב:

    באמת…
    כתבת את השאילתה במשתנה SSQLstr וניסית לבצע את SQLstr.

  20. BigNet הגיב:

    שמתי לב…אחר כך ניסיתי שוב ו..
    וניהיה לי בעיה שמתי שאני כותב שם משתמש וסיסמא נכונים זה עושה שגיאה וכותב
    Microsoft JET Database Engine error '80040e07'

    Data type mismatch in criteria expression.

    /DeWizard/zip/DeWizard.asp, line 61

    את שורה 61 אתה יכול לראות בהודעה הקודמת שלי

  21. BuildHome הגיב:

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

  22. BigNet הגיב:

    לא הבנתי אותך…תראה את הטופס
    זה הטופס:
    <FORM METHOD=POST ACTION="DeWizard.asp">
                                    <p align="center"><font color="#FFFFFF">שם משתמש:<br>
                                    </font>
                                    <INPUT TYPE="text" NAME="login" size="10"><p align="center">
                                    <font color="#FFFFFF">סיסמא:<br>
                                    </font>
                                    <INPUT TYPE="text" NAME="pass" size="10"></p>
                                    </p>
                                    <p align="center">
        <INPUT TYPE="submit" value="כניסה" name="sumbit"><br>

  23. BuildHome הגיב:

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

  24. BigNet הגיב:

    זה מראה ש…
    זה מראה שהבעיה היא בשורה 61…אבל אני לא רואה שם שום בעיה..

  25. BuildHome הגיב:

    ———–> שרשור מחדש
    תבדוק שהשדות login,pass הם מסוג טקסט.

  26. BuildHome הגיב:

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

  27. BigNet הגיב:

    לא הבנתי אותך…אולי כי אני חדש
    חדש בתחום ה ASP

  28. BigNet הגיב:

    אמממ…יש דרך אחרת??
    אתה יכול לתת לי את זה כחלק מקוד??או משהו?

  29. BuildHome הגיב:

    אוקי
    כשאתה נתקל בשגיאה בשאילתה שאתה מנסה לבצע אז פשוט תדפיס אותה במקום לנסות לבצעה.
    במקום השורה
    rs.Open SQL, Conn
    פשוט תכתוב
    Response.Write SQL,
    כמובן שהקוד הוא לדוגמא וכשאתה מדפיס תדאג שאתה מדפיס את המשתנה הנכון.
    ככה נוכל לראות את השאילתה שאתה מנסה לבצע ולראות אם קיימות בעיות.

  30. BigNet הגיב:

    זה מה שאני מקבל
    Microsoft VBScript runtime error '800a01c2'

    Wrong number of arguments or invalid property assignment: 'Write'

    /DeWizard/zip/DeWizard.asp, line 61

  31. BuildHome הגיב:

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

    הדיון ארוך מדי ועל כלום.
    אין יותר במה להמשיך.

  32. BigNet הגיב:

    נו בבקשה בנאדם עשיתי מה שאמרתה לי
    אמרתה לי לכתוב ולהגיד לך מה אני מקבל אז עשיתי…אז למה אתה לא יכול לעזור לי יותר?

  33. BigNet הגיב:

    אתה מתכוון ככה?
    ככה.?
    <%Response.Write(SQLstr)%>

  34. BigNet הגיב:

    זה מה שאני מקבל
    SELECT id,login,pass FROM Users WHERE login='1' AND pass='1'

  35. BuildHome הגיב:

    אתה בטוח שהם מסוג טקסט ???
    אין סיבה אחרת לשגיאה.

  36. BigNet הגיב:

    אני בטוח ואפילו הוכחה
    |קוד|
    <INPUT TYPE="text" NAME="login" size="10"><p align="center">
                                    <font color="#FFFFFF">סיסמא:<br>
                                    </font>
                                    <INPUT TYPE="text" NAME="pass" size="10"></p>
                                    </p>

  37. BigNet הגיב:

    הבעיה יכול להיות גם..
    במשתנה  conn??
    עשיתי
    <%Response.Write(conn)%>
    ועכשיו גם שאני מכניס פרטים שגויים הוא נותן לי הודעה כזאת

    Microsoft JET Database Engine error '80040e07'

    Data type mismatch in criteria expression.

    /DeWizard/zip/DeWizard.asp, line 61

  38. BigNet הגיב:

    אני חושב מצאתי את הבעיה…תראה
    Response object error 'ASP 0185 : 80020003'

    Missing Default Property

    /DeWizard/zip/DeWizard.asp, line 0

    A default property was not found for the object.

  39. BuildHome הגיב:

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

  40. BigNet הגיב:

    מההה??
    למה לא יודע על מה אתה מדבר..?!?
    אני עושה מה שאתה מסביר לי..!

  41. BigNet הגיב:

    אההההה
    הבנתי אותך אתה צודק…!!
    לבדוק אם הם מסוג טקסט בדאטא בייס הבנתי..

  42. BigNet הגיב:

    תודה תודה תודה …אחי זה עובד!!
    עובד חלקלק …תודה לך…לא הייתי מרוכז קודם בגלל זה לא הבנתי אותך טוב…

  43. BuildHome הגיב:

    פעם הבאה תהיה מרוכז
    כי אי אפשר להמשיך כך ובכלל, זה מבזבז מלא זמן.

  44. BigNet הגיב:

    יש לי את הקוד הבא..איך..
    יש לי את הקוד הבא:
    <%
    Response.Write "<center><FONT COLOR='white'>"
    Response.write "ברוך הבא</FONT></center> & session("login") "
    %>    

    איך אני עושה שגם המשתנה שבsession יהיה בצבע לבן וממורכז?

  45. BigNet הגיב:

    הקוד בצורה יותר נעימה לעין


    <%
    Response.Write "<center><FONT COLOR='white'>"
    Response.write "ברוך הבא</FONT></center> & session("login") "
    %>    

  46. BuildHome הגיב:

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

    2. אתה לא יודע לשרשר משתנים?
    <%
    Response.Write "<center><FONT COLOR='white'>"
    Response.write "ברוך הבא "&session("login")&"</FONT></center>"
    %>    

  47. BigNet הגיב:

    תודה אחי
    תודה …אני חדש בעסק…לומדים לאט לאט …

  48. MasterMind הגיב:

    וואלה גם לי יש בעיה בשירשור משתנים
    וכל שאר הדומים לזה
    יש איזשהו מאמר או שתסביר עכשיו …….

שלח תשובה