Hello all, Our Webmaster left us last week and we have a customer who gets a syntax error message after he attempts to log in to one of our webinars. When I try it from work (various computers) and from home, I do not get the error and can view the webinar. I know HTML cold, have had experience with JavaScript and and bit of VBScript, but I don't know alot of ASP. I have a good understanding of the databases here and what scripts call them and so forth. The message he receives after attempting to log in is this (he arrives at the log in page from an e-mail that is sent to him after he purchases the webinar): Microsoft Jet database Engine error '80040e14' Syntax error in FROM clause /webinar/scripts/verifyLogIn.asp, line 112 Line 112 in verifyLogIn.asp is this (in red in the code below): Set RcSet2 = cnnSimple.execute(sqlStr2) The entire code in verifyLogIn.asp follows below. Please let me know if you guys spot something wrong with the code. -------------------------- <%@LANGUAGE="VBSCRIPT" CODEPAGE="1252"%> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html> <head> <title></title> <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> </head> <body> <!-- #include file="../inc/adovbs.inc"--> <% Dim userName Dim password Dim lastName userName = request.form("userName") password = request.form("password") lastName = request.form("lastName") Dim media Dim medianNumber Dim iType Dim mediaName Dim price keyword = request.form("keyword") CDsLeft = request.form("CDsLeft") media = request.form("media") mediaNumber = request.form("mediaNumber") iType = request.form("iType") mediaName = request.form("mediaName") price = request.form("price") cme = request.form("cme") mediaType = request.form("mediaType") emailList = request.form("emailList") combinedCourses = request.form("combinedCourses") IF userName="admin" AND password="admin" AND lastName="admin" AND request.querystring("logInType")="register" THEN Response.redirect "../register.asp?invDate="&invDate&"&log=true&media="&media&"&mediaNumber="&mediaNumber&"&iType="&iType&"&mediaName="&mediaName&"&price="&price&"&cme="&cme&"&CDsLeft="&CDsLeft&"&keyword="&keyword&"&admin=true&combinedCourses="&combinedCourses&"" ELSE Dim cnnSimple ' ADO connection Dim rstSimple ' ADO recordset Dim strDBPath ' path to our Access database (*.mdb) file strDBPath = "Provider=Microsoft.Jet.OLEDB.4.0;" _ & "Data Source=" & Server.Mappath("/access_db/webcast.mdb") & ";" Set cnnSimple = Server.CreateObject("ADODB.Connection") cnnSimple.Open strDBPath IF request.querystring("logInType")="register" OR request.querystring("logInType")="productCertificate" THEN sqlStr = "SELECT * FROM customer WHERE userName='"_ & userName & "' AND password='" & password & "' AND lastName='" & lastName &"' ORDER BY invDate DESC" ELSE sqlStr = "SELECT * FROM customer WHERE userName='"_ & userName & "' AND password='" & password & "' AND lastName='" & lastName &"' AND combinedCourses LIKE '%" & mediaNumber & "%' ORDER BY invDate DESC" END IF Set RcSet = cnnSimple.execute(sqlStr) invDate = RcSet.fields("invDate").Value physician = RcSet.fields("physician").Value firstName = RcSet.fields("firstName").Value lastName = RcSet.fields("lastName").Value title = RcSet.fields("title").Value facility = RcSet.fields("facility").Value specialty = RcSet.fields("specialty").Value equipment = RcSet.fields("equipment").Value addressType = RcSet.fields("addressType").Value address1 = RcSet.fields("address1").Value address2 = RcSet.fields("address2").Value city = RcSet.fields("city").Value iState = RcSet.fields("state").Value zip = RcSet.fields("zip").Value country = RcSet.fields("country").Value phone = RcSet.fields("phone").Value fax = RcSet.fields("fax").Value email = RcSet.fields("email").Value cme2 = RcSet.fields("cme").Value cardNumber = RcSet.fields("cardNumber").Value cardExp = RcSet.fields("cardExp").Value cardSec = RcSet.fields("cardSec").Value userName = RcSet.fields("userName").Value password = RcSet.fields("password").Value expiration = RcSet.fields("expiration").Value pricePaid = RcSet.fields("pricePaid").Value IF expiration = "Not Applicable" or expiration = " " OR expiration = "" OR media = "Course" OR request.querystring("logInType")="certificate" THEN expiration = date() ELSE expiration = RcSet.fields("expiration").Value END IF iExpire = CDate(expiration) IF Date() <= DateValue(iExpire) THEN imExpired = "FALSE" ELSE imExpired = "TRUE" END IF sqlStr2 = "SELECT * FROM " & media & " WHERE " &media&"Number='"_ & mediaNumber & "'" Set RcSet2 = cnnSimple.execute(sqlStr2) instructorImage = RcSet2.fields("instructorImage").Value instructor = RcSet2.fields("instructor").Value instructorDetails = RcSet2.fields("instructorDetails").Value IF media = "Course" THEN startTime = RcSet2.fields("startTime").Value endTime = RcSet2.fields("endTime").Value courseDate = RcSet2.fields("courseDate").Value ELSEif media = "Product" THEN link = RcSet2.fields("link").Value sections = RcSet2.fields("sections").Value ELSE itAllEquals = "" END IF mediaName = RcSet2.fields(media&"name").Value IF pricePaid = "" OR media = "Product" THEN price = RcSet2.fields("price").Value ELSE price = pricePaid END IF cme3 = RcSet2.fields("cme").Value IF (not RcSet.BOF) and (not RcSet.EOF) AND request.querystring("logInType")="webinar" AND media = "Course" OR media = "Product" THEN Dim objDBconn, objRecSet Dim DB_CONN_STRING DB_CONN_STRING= "Provider=Microsoft.Jet.OLEDB.4.0;" _ & "Data Source=" & Server.Mappath("/access_db/WebinarCustLogin.mdb") & ";" Set objDBconn = server.createobject("ADODB.connection") objDBconn.Open DB_CONN_STRING Set objRecSet = Server.CreateObject("ADODB.RecordSet") loginDate = now() objRecSet.ActiveConnection = objDBconn objRecSet.CursorType = adOpenKeyset objRecSet.LockType = adLockOptimistic objRecSet.Source = "login" objRecSet.Open objRecSet.AddNew objRecSet("loginDate") = loginDate objRecSet("userName") = userName objRecSet("password") = password objRecSet("lastName") = lastName objRecSet("mediaNumber") = mediaNumber objRecSet.Update objRecSet.Close Set objRecSet = Nothing objDBconn.Close Set objDBconn = Nothing ELSE iHaveNoIdea = "Lindsey" END IF IF (not RcSet.BOF) and (not RcSet.EOF) AND request.querystring("logInType")="webinar" AND media = "Course" THEN Response.redirect "http://www.gcusonline.com/webinar/sessions/"&mediaNumber&".asp?invDate="&invDate&"&log=true&physician="&physician&"&firstName="&firstName&"&lastName="&lastName&"&title="&title&"&email="&email&"&userName="&userName&"&password="&password&"&expiration="&expiration&"&media="&media&"&mediaNumber="&mediaNumber&"&iType="&iType&"&mediaName="&mediaName&"&instructorImage="&instructorImage&"&instructor="&instructor&"&instructorDetails="&instructorDetails&"&startTime="&startTime&"&endTime="&endTime&"&courseDate="&courseDate&"" ELSEif (not RcSet.BOF) and (not RcSet.EOF) AND request.querystring("logInType")="webinar" AND media = "Product" AND imExpired = "FALSE" THEN Response.redirect "http://www.gcusonline.com/webinar/products/onlineVideoProduct.asp?invDate="&invDate&"" ELSEif (not RcSet.BOF) and (not RcSet.EOF) AND request.querystring("logInType")="webinar" AND media = "Product" AND imExpired = "TRUE" THEN Response.write "Your Log In may be expired, please call 1-800-619-1900 M-F 8:30am to 5:00pm (EST)" ELSEif (not RcSet.BOF) and (not RcSet.EOF) AND request.querystring("logInType")="workbook" AND media = "Product" AND imExpired = "FALSE" THEN Response.redirect "http://www.gcusonline.com/webinar/PASS/onlineWorkbook.asp?invDate="&invDate&"" ELSEif (not RcSet.BOF) and (not RcSet.EOF) AND request.querystring("logInType")="workbook" AND media = "Product" AND imExpired = "TRUE" THEN Response.write "Your Log In may be expired, please call 1-800-619-1900 M-F 8:30am to 5:00pm (EST)" ELSEif (not RcSet.BOF) and (not RcSet.EOF) AND request.querystring("logInType")="manualWebinar" THEN Response.redirect "http://www.gcusonline.com/webinar/sessions/"&mediaNumber&".asp?invDate="&invDate&"&log=true&physician="&physician&"&firstName="&firstName&"&lastName="&lastName&"&title="&title&"&email="&email&"&userName="&userName&"&password="&password&"&expiration="&expiration&"&media="&media&"&mediaNumber="&mediaNumber&"&iType="&iType&"&mediaName="&mediaName&"&instructorImage="&instructorImage&"&instructor="&instructor&"&instructorDetails="&instructorDetails&"&startTime="&startTime&"&endTime="&endTime&"&courseDate="&courseDate&"" ELSEif (not RcSet.BOF) and (not RcSet.EOF) AND request.querystring("logInType")="register" THEN Response.redirect "../register.asp?invDate="&invDate&"&log=true&physician="&physician&"&firstName="&firstName&"&lastName="&lastName&"&title="&title&"&facility="&facility&"&specialty="&specialty&"&equipment="&equipment&"&addressType="&addressType&"&address1="&address1&"&address2="&address2&"&city="&city&"&state="&iState&"&zip="&zip&"&country="&country&"&phone="&phone&"&fax="&fax&"&email="&email&"&cardNumber="&cardNumber&"&cardExp="&cardExp&"&cardSec="&cardSec&"&userName="&userName&"&password="&password&"&expiration="&expiration&"&media="&media&"&mediaNumber="&mediaNumber&"&iType="&iType&"&mediaName="&mediaName&"&price="&price&"&cme="&cme&"&CDsLeft="&CDsLeft&"&keyword="&keyword&"&combinedCourses="&combinedCourses&"&emailList="&emailList&"" ELSEif (not RcSet.BOF) and (not RcSet.EOF) AND request.querystring("logInType")="certificate" THEN Response.redirect "../courseEvaluation.asp?invDate="&invDate&"&log=true&physician="&physician&"&firstName="&firstName&"&lastName="&lastName&"&title="&title&"&facility="&facility&"&specialty="&specialty&"&equipment="&equipment&"&addressType="&addressType&"&address1="&address1&"&address2="&address2&"&city="&city&"&state="&iState&"&zip="&zip&"&country="&country&"&phone="&phone&"&fax="&fax&"&email="&email&"&userName="&userName&"&password="&password&"&expiration="&expiration&"&media="&media&"&mediaNumber="&mediaNumber&"&iType="&iType&"&mediaName="&mediaName&"&price="&price&"&cme="&cme3&"&instructor="&instructor&"&instructorDetails="&instructorDetails&"&keyword="&keyword&"" ELSEif (not RcSet.BOF) and (not RcSet.EOF) AND request.querystring("logInType")="productCertificate" THEN Dim finalAnswer Dim score Dim ssl_customer_code finalAnswer = request.form("finalAnswer") score = request.form("score") ssl_customer_code = request.form("ssl_customer_code") amount = request.form("amount") Response.redirect "https://www.gcusonline.com/scripts/vCreditCheck_viaklix.asp?invDate="&invDate&"&course_name="&mediaName&"&course_no="&mediaNumber&"&finalAnswer="&finalAnswer&"&score="&score&"&amount="&amount&"&cme_credit="&cme2&"&firstName="&firstName&"&lastName="&lastName&"&prof_desig="&title&"&company="&facility&"&address="&address1 & " " & address2 &"&city="&city&"&state="&iState&"&zip="&zip&"&country="&country&"&phone="&phone&"&fax="&fax&"&email="&email&"&userName="&userName&"&password="&password&"&expiration="&expiration&"&media="&media&"&mediaNumber="&mediaNumber&"&iType="&iType&"&mediaName="&mediaName&"&price="&price&"&cme="&cme2&"&instructor="&instructor&"&instructorDetails="&instructorDetails&"&keyword="&keyword&"&cardNumber="&cardNumber&"&cardExp="&cardExp&"&cardSec="&cardSec&"&ssl_customer_code="&ssl_customer_code&"" ELSE Response.write "Your Log In may be expired, please call 1-800-619-1900 M-F 8:30am to 5:00pm (EST)" END IF rcSet.Close Set rcSet = Nothing rcSet2.Close Set rcSet2 = Nothing cnnSimple.Close Set cnnSimple = Nothing END IF %> </body> </html>
I'd look to see if the value being passed into the media variable has a problem. Maybe an apostrophe or something. Try to find out exactly what the customer is passing in. I usually ask for a screenshot of what they've typed in before they press the submit button. Hope that helps.