Я борюсь с моим кодом ниже, я читаю имя пользователя, зарегистрированное в сети, и пытаюсь вставить его имя в таблицу SQL, называемую лицензиями, таблица содержит 2 столбца 1 содержит номера лицензий, остальные - все значения в настоящий момент но при загрузке этой страницы имя пользователя должно быть вставлено рядом с одной. В настоящее время страница просто петли постоянно, и ничего не вставляется в таблицу. Пользователь внутри connection1.asp имеет доступ для чтения/записи к базе данных.ASP Как вставить имя пользователя в таблицу?
Любые идеи? Спасибо
<%@LANGUAGE="VBSCRIPT" LCID=1033%>
<%
aName = Split(Request.ServerVariables("LOGON_USER"), "\")
user = aName(UBound(aName))
user = UCase(user)
Erase aName
%>
<!--#include file="Connections/connection1.asp" -->
<%
Dim Recordset1
Dim Recordset1_numRows
Set Recordset1 = Server.CreateObject("ADODB.Recordset")
Recordset1.ActiveConnection = MM_connection1_STRING
Recordset1.Source = "SELECT * FROM Licenses2 WHERE userid = '" & user & "';"
Recordset1.Open()
%>
<HTML><HEAD></HEAD>
<BODY leftmargin="5" onLoad="setTimeout('reloadFunction()',500000)">
<% Do While NOT Recordset1.EOF %>
<% strUserName =(Recordset1.Fields.Item("userid").Value)%>
<% response.write strUserName %>'s Serial Number:
<% strSerial =(Recordset1.Fields.Item("serial").Value)%>
<% response.write strSerial %>
<% Recordset1.movenext %>
<% loop %>
<%
If strUserName = user then
'record found do nothing
'response.write "user found"
else
adoCon.Execute = "SET ROWCOUNT 1; UPDATE Licenses2 SET userid = '" & user & "' WHERE userid = 'NULL';"
Response.AddHeader "Refresh", "3"
End if
%>
</BODY>
</HTML>
<%
Recordset1.Close()
Set Recordset1 = Nothing
Set Recordset2 = Nothing
%>
кашель ... SQL-инъекция ... по крайней мере, вы можете заменить «ничем» или «... маловероятной атакой, но все же возможно» –