שלח תשובה

זירת השאלות

736
צפיות
8
תשובות

• ‏‏אי-התאמה של סוג: 'sOrders'

,‏ 19 בנובמבר, 2008

שלום
אני בונה אתר בשפת ASP
וכאשר נתוני המשתמש מועוברים לאקסס מופיע לי הודעה

סוג שגיאה:
‏‏שגיאת זמן ריצה שלMicrosoft VBScript(0x800A000D)
‏‏אי-התאמה של סוג: 'sOrders'
/submitorder.asp,line104

שורת השגיאה:

sOrders("Uname") =request.form("Uname")

הנה חלק מהקוד
<%
  CheckErrors "txtAddress"," Address"
  CheckErrors "txtCity","City"
  CheckErrors "txtZIP","ZIP"
  CheckErrors "txtPhone","Telephone"
  CheckErrors "optPaymentType","Payment Type"
  CheckErrors "txtAcctNo","Account Number"
  CheckErrors "txtExpDate","Expiration Date"
  if sErrorString = "" then
    set dbMain = server.createobject("ADODB.Connection")
    dbMain.open ("data")
    Set rsProducts = Server.CreateObject("ADODB.Recordset")
    for i = 1 to nNumCartItems
      sSQL = "SELECT * FROM products WHERE itemproductnumber = '" & _
         sCartItemNums(i) & "'"
      rsProducts.open sSQL, dbMain, adopenstatic, _
        adlockpessimistic, adcmdtext
      if rsProducts("itemsaleprice") > 0 then
        cItemPrice(i) = rsProducts("itemsaleprice")
      else
        cItemPrice(i) = rsProducts("itemregularprice")
      end if
      sItemName(i) = rsProducts("itemname")
      cOrderTotal = cOrderTotal + (nCartItemQtys(i) * cItemPrice(i))
      nNumItems = nNumItems + nCartItemQtys(i)
      rsProducts.close
    next
    cShipping = session("shipbasecharge") + _
      (nNumItems * session("shipitemcharge"))
    cOrderTotal = cOrderTotal + cShipping
    dbMain.BeginTrans
    Set rsOrders = Server.CreateObject("ADODB.Recordset")
    sSQL = "SELECT * FROM orders"
    rsOrders.open sSQL, dbMain, adOpenStatic, adlockpessimistic, adcmdtext
  rsOrders.addnew
  rsOrders("Uname") = request.form("Uname")
  rsOrders("customername") = request.form("txtCustomerName")
   rsOrders("customeraddress") = request.form("txtAddress")
   rsOrders("customercity") = request.form("txtCity")
   rsOrders("customerstate") =request.form("txtState")
   rsOrders("customerzip") =request.form("txtZIP")
   rsOrders("customerphone") =request.form("txtPhone")
   rsOrders("orderamount") =cOrderTotal
   rsOrders("paymentmethod")=request.form("optPaymentType")
   rsOrders("paymentaccount")=request.form("txtAcctNo")
   rsOrders("exp

תגיות:

8 תשובות

  1. raychin הגיב:

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


    א.ר.ר

  2. לא מובן
    אתה יכול לשלוף רשומה ספציפית לפי ID של משתמש באמצעות WHERE…. קרא על כך במדריך SQL כאן באתר


    אלי ענתבי

  3. raychin הגיב:

    שליפת נתוני המשתמש
    אני בונה אתר מכירות בשפתJAVASCRIPT+SQL+ASP נתוני המשתמש נשמרים באקסס  בניתי טופס עידכון נתונים השאלה היא:
    איך אני שולף את הנתוים של המשתמש  שמחובר?


    א.ר.ר

  4. לא מובן
    אתה יכול לשלוף רשומה ספציפית לפי ID של משתמש באמצעות WHERE…. קרא על כך במדריך SQL כאן באתר


    אלי ענתבי

  5. raychin הגיב:

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


    א.ר.ר

  6. כמו שאלי אתר
    תנאי WHERE שם מספק המשתמש שמחובר כרגע.


    צוות WebMaster  

  7. sharons הגיב:

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

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

שלח תשובה