Работая на веб-сайте classic asp
Я заметил поведение, которое доставляет немало хлопот некоторым пользователям.Каким-то образом после публикации формы входа в систему какой-то пароль больше не используется, появляется ошибка (104) reset connection by peer
, пытающаяся получить доступ к main.asp
.
Вот странная вещь, которую вы, ребята, можете помочь мне выяснить:
После многих часов попыток найти подсказку, мы вернули все это в рабочее состояние, просто изменив HTML name atribute
с name="pwdSenha"
на name="pwdTestSenha"
, а затем на следующий день после того, как все началось снова, поэтому мы изменили названиееще раз, теперь все снова работает нормально, но я думаю, только до завтра.
Есть объяснение того, что происходит?
Вот упрощенный код:
<form class="modal-content animate" id="frmLogin" name="frmLogin" method="post" action="../functions/aut_user.asp">
<div class="container">
<label><b>Login</b></label>
<input type="text" placeholder="Entre com Login" name="txtLogin" maxlength="45" required>
<label><b>Senha</b></label>
<input type="password" placeholder="Entre com a Senha" name="pwdSenha" maxlength="15">
<button id="bntLoginEntrar" type="submit">Entrar</button>
</div>
</form>
Класс Аутентификации
<%
if funConectaBD() and Session("USER_ID") = "" then
Dim strLogin, strSenha
strLogin = fAspas(Request.Form("txtLogin"))
strSenha = "IS NULL"
if Trim(Request.Form("pwdSenha")) <> "" then
strSenha = "= '" & Cript(Request.Form("pwdSenha")) & "'"
end if
if strLogin <> "" then
'on error resume next
Dim adoRSLogin
Set adoRSLogin = Server.CreateObject("ADODB.Recordset")
adoRSLogin.ActiveConnection = bdConn
Dim strSQL
if Session("USER_CHANGE_PASS") <> "S" then
strSQL = "SELECT * " &_
"FROM users us" &_
"WHERE us.login = '" & strLogin & "' AND us.senha " & strSenha & " AND us.ativo = 'S';"
else
strSQL = "SELECT " &_
"FROM usuario us " &_
"WHERE us.login = '" & strLogin & "' AND us.ativo = 'S';"
end if
'Response.Write(strSQL & "<br/>")
'Response.End()
adoRSLogin.Open(strSQL)
if not adoRSLogin.EOF then
Session("USER_ID") = adoRSLogin("numero")
Session("FUNC_ID") = adoRSLogin("funcionario")
Session("USER_NAME") = adoRSLogin("nome")
Session("FUNC_NAME") = ""
Session("USER_LOGIN") = adoRSLogin("login")
Session("USER_EMAIL") = adoRSLogin("email")
Session("USER_PHONE") = adoRSLogin("telefone")
if adoRSLogin("adm") = "S" then
Session("USER_ADM") = TRUE
else
Session("USER_ADM") = FALSE
end if
Session("UNIT_ID") = adoRSLogin("unidade_numero")
Session("UNIT_NAME") = adoRSLogin("unidade_nome")
strSQL = "CALL inclui_conexao(" & Session("UNIT_ID") & "," & Session("USER_ID") & ",NOW(),NULL);"
'Response.Write(strSQL & "<br/>")
'Response.End
bdConn.execute(strSQL)
'on error goto 0
end if
strSQL = empty
set adoRSLogin = nothing
end if
end if
%>