WCM Forum

WCM Forum (http://www.wcm.at/forum/index.php)
-   Programmierung (http://www.wcm.at/forum/forumdisplay.php?f=17)
-   -   Fehler im ASP-Script, aber wo? (http://www.wcm.at/forum/showthread.php?t=87842)

BlackR 12.02.2003 18:12

Fehler im ASP-Script, aber wo?
 
Hi, ich hab hier mal ein einfaches Loginscript für meine Seite Programmiert, es arbeitet mit einer Seite, in der man Benutzernamen und Kennwort eingeben muss, die dann über die Get Methode (Querystring) übergeben werden.

Aber ich krieg immer diesen Fehler:

Microsoft OLE DB Provider for ODBC Drivers Fehler '80040e10'

[Microsoft][ODBC Microsoft Access Driver] 1 Parameter wurden erwartet, aber es wurden zu wenig Parameter übergeben.

/Band/memCheck.asp, line 10

Ich hab schon 10 mal die Benutzernamen in der Datenbank überprüft, die ich immer ins Loginfeld eingebe, aber das Script findet nie die DB Zeile,...

Könnte mir jemand mal helfen?

Hier hab ich das komplette Script:

PHP-Code:

<% 
if 
request.QueryString("uname")= "" then
response
.Redirect("memLogin.asp?Login=nix")
end if
if 
request.QueryString("pw")="" then
response
.Redirect("memLogin.asp?Login=nix")
end if

set mrs Nl.execute("Select * From Members where Bandname=" request.QueryString("uname"))
if 
not request.QueryString("uname") = mrs("Bandname"then
response
.Redirect("memLogin.asp?PW=Falsch")
end if
if 
not request.QueryString("pw") = mrs("BandPW"then
response
.Redirect("memLogin.asp?PW=Falsch")
end if
if 
request.QueryString("uname")=mrs("bandname") and Request.QueryString("pw")=mrs("bandPW"then
set session
("uid") = mrs("bandID")
set session("autor") = mrs("bandName")
response.redirect("memIndex.asp")
end if
mrs.close
NL
.close
 
%> 

Schonmal danke im Voraus für eure Hilfe! :D

mfg BlackR :cool:

moorhahn 12.02.2003 18:59

in der zeile
Code:

set mrs = Nl.execute("Select * From Members where Bandname=" & request.QueryString("uname"))
hast die hockommas vergessen (falls im feld bandname ein string steht):
Code:

set mrs = Nl.execute("Select * From Members where Bandname='" & request.QueryString("uname") & "'")

BlackR 12.02.2003 19:09

Danke es geht!!

Ich hätt da noch eine Frage zu dem Sessions Teil (set session(uid)...) ich hab noch nie was mit sessions gemacht, stimmt das so??

und hier hab ich noch einen Fehler:

Ich hab bei dem Script (oben) angegeben: Falls Username od Passwort falsch oder nicht angegeben sind sollte mit einem Bestimmten Querystring zu der Loginseite zurückverwiesen werden. Dort sollte wenn einer dieser Querystrings auftritt, eine andere Meldung sein, aber die Kommt nicht.

Hier das Script:

PHP-Code:

<%response.Expires=0%>
<
html>
<
head>
<
title>Die Niveau Bremser Member Bereich</title>
<
meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
</
head>

<
body bgcolor="#009900" text="#000000" link="#000000" vlink="#000000" alink="#000000">
<%
if 
request.QueryString("action")="Logout" then
session
.Abandon
response
.redirect("nbindex.asp")
end if
if 
request.QueryString("Login")="Falsch" then
meldung 
"Benutername oder Passwort Falsch!!"
else
meldung ""
end if
if 
request.QueryString("Login")="Nix" then
meldung 
"Bitte Benutzername oder Passwort Eingeben!"
else
meldung=""
end if
%>
<
div align="center">
  <
table width="750" border="0" cellspacing="0">
    <
tr
      <
td><div align="center">[img]bg/LogoNeu.gif[/img]</div></td>
    </
tr>
    <
tr
      <
td><div align="center"
          <
form action="memCheck.asp" method="get" name="Login" id="Login">
            

<
font face="Arial, Helvetica, sans-serif" size="3">[b]<%=meldung%>[/b]</font>            

            

            <
table width="283" border="1" cellspacing="0" bordercolor="#006600" bgcolor="#CCFFCC">
              <
tr
                <
td width="111">[b]<font size="2" face="Arial, Helvetica, sans-serif">Benutzername:</font>[/b]</td>
                <
td width="162"><input name="uname" type="text" id="uname" style="background-color:#00B000; color:#000000; border:1px solid #000000; margin-top:3px; font-family:Arial; font-size:10px; font-weight:bold;"></td>
              </
tr>
              <
tr
                <
td><font size="2" face="Arial, Helvetica, sans-serif">[b]Passwort:[/b]</font></td>
                <
td><input name="pw" type="password" id="pw" style="background-color:#00B000; color:#000000; border:1px solid #000000; margin-top:3px; font-family:Arial; font-size:10px; font-weight:bold;"></td>
              </
tr>
              <
tr
                <
td colspan="2"><input type="submit" name="Submit" value="Einloggen" style="background-color:#00B000; color:#000000; border:1px solid #000000; margin-top:3px; font-family:Arial; font-size:10px; font-weight:bold;"></td>
              </
tr>
            </
table>
          </
form>
          <
font face="Arial, Helvetica, sans-serif" size="2"> </font> </div></td>
    </
tr>
  </
table>
</
div>
</
body>
</
html

Nochmal danke für die Hilfe :) :) :)

moorhahn 14.02.2003 18:33

im teil
Code:

if request.QueryString("Login")="Falsch" then
meldung = "Benutername oder Passwort Falsch!!"
else
meldung = ""
end if
if request.QueryString("Login")="Nix" then
meldung = "Bitte Benutzername oder Passwort Eingeben!"
else
meldung=""
end if

fragst du "Login" aus dem querystring ab, im oberen Script aber übergibst du "nix" an "Login", und "Falsch" an "PW".

es sollte folgend lauten:

Code:

'du musst "PW" abfragen, nicht "Login"
if request.QueryString("PW")="Falsch" then
meldung = "Benutername oder Passwort Falsch!!"
else
meldung = ""
end if

'und oben übergibst "nix", fragst aber dann nach "Nix"
if request.QueryString("Login")="nix" then
meldung = "Bitte Benutzername oder Passwort Eingeben!"
else
meldung=""
end if


bitte :)

BlackR 14.02.2003 22:37

Hab ich scho geändert, funzt aber trotzdem nicht, das ist aber eh egal, jetzt hab ich wieder was ganz anderes.

Ich habe jetzt eine Seite mit 5 <input text> Formularelementen, 3 <textarea> Elementen und 2 hidden Elementen.

Als erstes kommen 3 normalen Textfelder, dann die Textbereiche, dann der Rest.

Das Formular wird an ein Skript gesendet, dass in der DB in einer Tabelle Upgedated wird.

Nun zum Fehler:

Wenn ich beim 3 Textbereich mehr als 10 Zeilen eingebe, funzt das Skript nicht mehr! Ist dazu der HTTP Header zu klein?

Es kommt immer eine Fehlermeldung mit der Nachricht [Microsoft][ODBC Microsoft Access Driver] Syntaxfehler (fehlender Operator) in Abfrageausdruck "Mein Text aus dem Steuerelement"

Was ist hier der Fehler?

Danke im Voraus


Alle Zeitangaben in WEZ +2. Es ist jetzt 17:20 Uhr.

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
© 2009 FSL Verlag