Author |
Topic  |
Eladon
Starting Member
Canada
27 Posts |
Posted - 13 September 2002 : 18:19:44
|
I am running Snitz 3.4.02 on a Win2000 Server with IIS 5.0 in a Windows Domain intranet environment. I am using NT Authorization for the forum.
The forum runs fine with users manually registering. I was however hoping to take advantage of the "Use NT AutoLogon" feature. However, when I turn this option on, and a new (unregistered) user accesses the forum, the following message appears:
Microsoft JET Database Engine error '80040e07' Data type mismatch in criteria expression. /forum/register.asp, line 586
Am I misinterpreting the purpose of the "Use NT AutoLogon" feature, or is there some other problem here?
|
Edited by - ruirib on 16 September 2002 19:25:41 |
|
Eladon
Starting Member
Canada
27 Posts |
Posted - 16 September 2002 : 17:02:20
|
Sorry to be a pain, but is there anyone out there that uses the NT Autologon feature and might be able to help me with this problem? |
 |
|
Nikkol
Forum Moderator
    
USA
6907 Posts |
Posted - 16 September 2002 : 17:46:54
|
I don't use NT authentication, but I think I read in that forum about how maybe if some of your NT info is blank (like Description or Full Name) that it might return that error. You might try some testing with that making some test users that have all info filled in and others with partial info and see if that really does make a difference. |
Nikkol ~ Help Us Help You | ReadMe | 3.4.03 fixes | security fixes ~ |
 |
|
Eladon
Starting Member
Canada
27 Posts |
Posted - 16 September 2002 : 18:39:39
|
Actually the error message I mentioned above appears just accessing the main forum page by a user that is not yet registered. Users that are already registered access the site as usual, and have no problems.
My assumption was that if you are an "unregistered" user, and you navigate to the main forum page, that rather than having to click on the "register" button and plugging in all of your information, instead all of the basic information (name etc) would be collected via the NT Domain, thus you would be "automatically logged on". Passwords are already not used when using NT Authorization (as they are not necessary), so really to "register" in an NT environment all you end up doing is plugging in your name anyway. |
Edited by - Eladon on 16 September 2002 18:44:28 |
 |
|
Nikkol
Forum Moderator
    
USA
6907 Posts |
Posted - 16 September 2002 : 18:45:56
|
Huh? Did you read my post? Yes, that is my assumption too, is that it is reading info from your NT account. What I was saying is that maybe there is some info missing in the NT account that is trying to register, like maybe the Full Name field in NT. I was suggesting that you make a test NT account with all the info filled in on that first screen in User Manager and see if that person can be auto registered. The reason I thought that might be the case was because of the data type mismatch. |
Nikkol ~ Help Us Help You | ReadMe | 3.4.03 fixes | security fixes ~ |
 |
|
Eladon
Starting Member
Canada
27 Posts |
Posted - 17 September 2002 : 16:48:46
|
Sorry Nikkol, some really dumb guy must have snuck in here and typed that message... I am personally way to smart to have misunderstood what you were saying! 
The NT user account information is filled out completely for each account. Granted, there's not much there other than the person's login ID, password and User Name anyway. I guess the only thing extra that an automatic registration would be able to pull out is the user name. |
 |
|
Nikkol
Forum Moderator
    
USA
6907 Posts |
|
Nikkol
Forum Moderator
    
USA
6907 Posts |
|
Eladon
Starting Member
Canada
27 Posts |
Posted - 17 September 2002 : 18:39:51
|
Yes, I'm sure. However, it might be the format for the user name that we're using? For example, I ran the following code for "John D. Smith": <% strNTUser = Request.ServerVariables("AUTH_USER") strNTUser = replace(strNTUser, "\", "/") Set strNTUserInfo = GetObject("WinNT://"+strNTUser) strNTUserFullName=strNTUserInfo.FullName Response.Write "" & _ "strNTUser: " & strNTUser & "<br>" & vbCr & _ "strNTUserFullName: " & strNTUserFullName & vbCr %>
and the user's info comes out as: strNTUser: CA/jsmith strNTUserFullName: Smith, John D. Maybe this forum doesn't like last name first?
|
 |
|
Nikkol
Forum Moderator
    
USA
6907 Posts |
Posted - 17 September 2002 : 18:41:59
|
No, that shouldn't be it. I'm really not sure what's going on. Hopefully someone with experience with the NT authentication for this forum will chime in soon. 
Also, you might want to try upgrading to 3.4.03 ... maybe it's fixed in there. Also, you can do a response.write strSql right before the line giving you the error. That might give a clue as to what's going on. |
Nikkol ~ Help Us Help You | ReadMe | 3.4.03 fixes | security fixes ~ |
Edited by - Nikkol on 17 September 2002 18:44:23 |
 |
|
ASPDude
Starting Member
United Kingdom
41 Posts |
Posted - 18 September 2002 : 04:18:38
|
Sorry to disappoint you but it's not fixed in V3.4.03 either. I've spoke about this in about 3 different topics now (the original I started) and it hasn't been working since V3.4.01 was released. Something has been changed for the NT Autologon during the upgrade with V3.4.02 and it hasn't been rectified.
Not sure if Kal Corp is having a similar problem but I haven't heard anything from him on this forum for a while now. kal...you getting the same problem?
I'm still investigating and if I can come up with a solution I'll let you all know. |
 |
|
ASPDude
Starting Member
United Kingdom
41 Posts |
Posted - 18 September 2002 : 05:12:01
|
Here is the error I'm receiving after entering the response.write strSql line above:
INSERT INTO FORUM_MEMBERS (M_NAME, M_USERNAME, M_PASSWORD, M_EMAIL, M_DATE, M_COUNTRY, M_AIM, M_ICQ, M_MSN, M_YAHOO, M_POSTS, M_HOMEPAGE, M_LASTHEREDATE, M_STATUS, M_RECEIVE_EMAIL, M_LAST_IP, M_IP, M_SIG, M_VIEW_SIG, M_SIG_DEFAULT, M_FIRSTNAME, M_LASTNAME, M_CITY, M_STATE, M_PHOTO_URL, M_LINK1, M_LINK2, M_AGE, M_DOB, M_MARSTATUS, M_SEX, M_OCCUPATION, M_BIO, M_HOBBIES, M_LNEWS, M_QUOTE, M_SHA256) VALUES ('Davies N (Nicholas)', 'u203430', 'e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855', ' ', '20020918095452', ' ', ' ', ' ', ' ', ' ', 0, ' ', '20020918095452', 1, ' ', 'XXX.XXX.XXX.XXX', 'XXX.XXX.XXX.XXX', ' ', 1, 0, ' ', ' ', '', '', '', ' ', ' ', '', '', '', '', '', '', '', '', '', 1) Microsoft OLE DB Provider for ODBC Drivers error '80040e07'
[Microsoft][ODBC Microsoft Access Driver] Data type mismatch in criteria expression.
/snitz34v3/register.asp, line 569
IP Address has been removed and replaced with X for security issues obviously.
Any thoughts? |
 |
|
Nikkol
Forum Moderator
    
USA
6907 Posts |
Posted - 18 September 2002 : 09:35:12
|
It doesn't like the data type for one or more of those values...so lets look:
M_NAME = 'Davies N (Nicholas)' M_USERNAME = 'u203430' M_PASSWORD = 'e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855' M_EMAIL = ' ' M_DATE = '20020918095452' M_COUNTRY = ' ' M_AIM = ' ' M_ICQ = ' ' M_MSN = ' ' M_YAHOO = ' ' M_POSTS = 0 M_HOMEPAGE = ' ' M_LASTHEREDATE = '20020918095452' M_STATUS = 1 M_RECEIVE_EMAIL = ' ' M_LAST_IP = 'XXX.XXX.XXX.XXX' M_IP = 'XXX.XXX.XXX.XXX' M_SIG = ' ' M_VIEW_SIG = 1 M_SIG_DEFAULT = 0 M_FIRSTNAME = ' ' M_LASTNAME = ' ' M_CITY = '' M_STATE = '' M_PHOTO_URL = '' M_LINK1 = ' ' M_LINK2 = ' ' M_AGE = '' M_DOB = '' M_MARSTATUS = '' M_SEX = '' M_OCCUPATION '' M_BIO = '' M_HOBBIES = '' M_LNEWS = '' M_QUOTE = '' M_SHA256 = 1
The only one that looks suspicious to me is the one in red. That field in my database is a number. Gonna go look at the code...
Here's the line in register.asp that assigns that value: strSql = strSql & ", '" & chkString(Request.Form("ReceiveEMail"),"SQLString") & "'"
What I don't understand is why only NT auth people get that problem if this is the cause. Richard...you got any thoughts on this? |
Nikkol ~ Help Us Help You | ReadMe | 3.4.03 fixes | security fixes ~ |
Edited by - Nikkol on 18 September 2002 09:42:49 |
 |
|
Nikkol
Forum Moderator
    
USA
6907 Posts |
Posted - 18 September 2002 : 10:22:06
|
Okay, Eladen and ASPDude, do me a favor and try this.
1. Make a backup copy of your current register.asp file 2. Find in register.asp the following:
strSql = strSql & ", '" & chkString(rsKey("M_RECEIVE_EMAIL"),"SQLString") & "'"
and change it to:
strSql = strSql & ", " & cLng(rsKey("M_RECEIVE_EMAIL")) & " "
3. Find the following:
strSql = strSql & ", '" & chkString(Request.Form("ReceiveEMail"),"SQLString") & "'"
and change it to:
strSql = strSql & ", " & cLng(Request.Form("ReceiveEMail")) & " "
Let me know if that fixes your problem. |
Nikkol ~ Help Us Help You | ReadMe | 3.4.03 fixes | security fixes ~ |
Edited by - Nikkol on 18 September 2002 10:30:24 |
 |
|
ASPDude
Starting Member
United Kingdom
41 Posts |
Posted - 18 September 2002 : 10:59:03
|
Nikkol
Changed your entries as requested and it now works...yippeee!!!!!!
Thanx for all your help. |
 |
|
Nikkol
Forum Moderator
    
USA
6907 Posts |
|
Topic  |
|
|
|