/ Forside / Teknologi / Udvikling / ASP / Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
ASP
#NavnPoint
smorch 9259
Harlekin 1866
molokyle 1040
Steffanst.. 758
gandalf 657
smilly 564
gibson 560
cumano 530
MouseKeep.. 480
10  Random 410
lille problem med request.querystring
Fra : Mads Brinch


Dato : 13-02-10 08:21

hej NG jeg har et lille problem med at den gerne skulle skrive
personens navn på siden når han logger ind på siden, men den
skriver ikke noget...

log in formen

<%
Dim adoCon
Dim strCon
Dim rsCheckUser
Dim strAccessDB
Dim strSQL
Dim strUserName

strUserName = Request.Form("txtUserName")

strAccessDB = "db/pass.mdb"

Set adoCon = Server.CreateObject("ADODB.Connection")

strCon = "DRIVER={Microsoft Access Driver
(*.mdb)};uid=;pwd=letmein; DBQ=" & Server.MapPath(strAccessDB)

adoCon.Open strCon

Set rsCheckUser = Server.CreateObject("ADODB.Recordset")

strSQL = "SELECT tblUsers.Password FROM tblUsers WHERE
tblUsers.UserID ='" & replace(strUserName, "'", "''") & "'"

rsCheckUser.Open strSQL, strCon

If NOT rsCheckUser.EOF Then

If (Request.Form("txtUserPass")) = rsCheckUser("Password") Then

Session("blnIsUserGood") = True

Set adoCon = Nothing
Set strCon = Nothing
Set rsCheckUser = Nothing

Response.Redirect"/karakterbogen/site/zemvtbagj.asp?name=" &
strUserName
End If
End If

Set adoCon = Nothing
Set strCon = Nothing
Set rsCheckUser = Nothing

Session("blnIsUserGood") = False

Response.Redirect"fejl.asp"
%>

siden hvor navnet gerne skulle stå på

<%
If Session("blnIsUserGood") = False or
IsNull(Session("blnIsUserGood")) = True then
Response.Redirect"fejl.asp"
End If
%>
<%
Response.Buffer=False
Response.Expires = 60
Response.ExpiresAbsolute = #1980-01-01#
Response.Expiresabsolute = Now() - 1
Response.AddHeader "pragma", "no-cache"
Response.AddHeader "cache-control", "no-cache, must-revalidate"
Response.AddHeader "cache-control", "no-store, must-revalidate"
Response.AddHeader "cache-control","private"
Response.CacheControl = "Private"
Response.AddHeader "Last-Modified", Now & " GMT"
%>
<% Dim strTitle
strTitle="Velkommen"%>

<head>
<meta http-equiv="Content-Language" content="da">
<meta http-equiv="Content-Type" content="text/html;
charset=windows-1252">
<meta name="GENERATOR" content="Microsoft FrontPage 6.0">
<meta name="ProgId" content="FrontPage.Editor.Document">
<link rel="stylesheet" type="text/css" href="../style/bg.css">
</head>

<body>

<div class="indhold">

<h1><%Response.Write strTitle%></h1>

</div>

<div align="center">
<center>
<table border="0" width="800" height="10" cellspacing="0"
cellpadding="0">
<tr>
<td width="100%" height="10"><div align="center"><b><img
border="0" src="../billeder/top.jpg" width="800"
height="100"></b></div></td>
</tr>
</table>
</center>
</div>             




<div align="center">
<center>
<table border="1" width="800" height="100"
bordercolor="#000000" cellspacing="0" cellpadding="0"
bgcolor="#ffffff">
<tr>
    <td width="77%" height="50" valign="top">
    <br/>
<div align="center" style="letter-spacing:
10px;"><h1><%=request.querystring("UserID")%></h1></div>
       <hr/>
   <br />
   
   
   
   

<br />

</td>

</td>
</tr>
</table>
</center>
</div>


<div align="center">
<center>
<table border="0" width="800" height="10" cellspacing="0"
cellpadding="0">
<tr>
<td width="100%" height="10"><img border="0"
src="../billeder/bund.jpg" width="800" height="100"></td>
</tr>
</table>
</center>
</div>

</body>

</html>

--
Vil du lære at kode HTML, XHTML, CSS, SSI, ASP eller ASP.NET?
- Pædagogiske tutorials på dansk
- Kom godt i gang med koderne
KLIK HER! => http://www.html.dk/tutorials

 
 
Christian Kragh (14-02-2010)
Kommentar
Fra : Christian Kragh


Dato : 14-02-10 10:48

> hej NG jeg har et lille problem med at den gerne skulle skrive
> personens navn på siden når han logger ind på siden, men den
> skriver ikke noget...

Hej.

Et link til siden ville hjælpe noget...

Men umiddelbart er det en meget omstændigt måde at lave log ind på du
laver...

Jeg plejer at lave følgende på samme side, fylder intet og virker...:

const qDBPath = "db/user.mdb"
session("qUsers") = false
session("qUser") = false
session("qUserGroup") = false

if ((len(request.form("username")) > 0) AND (len(request.form("password")) >
0)) then
qTempUserName = replace(request.form("username"),"'","&acute;")
qTempPassWord = replace(request.form("password"),"'","&acute;")
strSQL = "Select * from tblUsers where ((username = '" & qTempUserName &
"') AND (password = '" & qTempPassWord & "')) order by uid"

Set Conn = Server.CreateObject("ADODB.Connection")
DSN = "DRIVER={Microsoft Access Driver (*.mdb)}; "
DSN = DSN & "DBQ=" & qDBPath & "; Locale Identifier=1030"
Conn.Open DSN

Set rs = Conn.Execute(strSQL)

if not rs.eof then
session("qUsers") = true
session("qUser") = rs("username")
session("qUserGroup") = rs("group")
end if

rs.Close
Set rs = Nothing

Conn.Close
Set Conn = Nothing

if ((session("qUsers") = true) then
response.redirect qPath & "default.asp"
end if
end if


<h1>Log ind</h1>
<form action='login.asp' method='post'>
<div class='LoginTextBar'>Brugernavn:</div><input type='text'
name='username' id='username' value=' /><br />
<div class='LoginTextBar'>Kode:</div><input type='password' name='password'
id='password' value=' /><br />
<div class='LoginTextBar'>&nbsp;</div><input type='submit' value='Logind' />
</form>

> siden hvor navnet gerne skulle stå på

Problemet er at du ikke læser noget sted på denne side:
request.querystring("navn")
Det er det første du skal gøre for at få det til at virke...
Men brug session variabler, så husker den det også selvom man sender
brugeren rundt imellem flere sider...

> <table border="0" width="800" height="10" cellspacing="0"
> cellpadding="0">
> <tr>
> <td width="100%" height="10"><div align="center"><b><img
> border="0" src="../billeder/top.jpg" width="800"
> height="100"></b></div></td>
> </tr>
> </table>
> </center>

Et andet lille trix...
Brug kun tabeller når det er data der skal vises som skal ligge i tabeller.
Tabeller til design er forældet, idag bruger man stort set kun div / span
elementer med css kode.

Christian


Mads Brinch (14-02-2010)
Kommentar
Fra : Mads Brinch


Dato : 14-02-10 16:24

nu kommer den frem med denne fejlmeddelese

Microsoft VBScript compilation error '800a03ee'

Expected ')'

/karakterbogen/test/login.asp, line 32

if ((session("qUsers") = true) then
-------------------------------^

hvad er der gået galt...

--
Vil du lære at kode HTML, XHTML, CSS, SSI, ASP eller ASP.NET?
- Pædagogiske tutorials på dansk
- Kom godt i gang med koderne
KLIK HER! => http://www.html.dk/tutorials

Stig Johansen (14-02-2010)
Kommentar
Fra : Stig Johansen


Dato : 14-02-10 16:52

Mads Brinch wrote:

> if ((session("qUsers") = true) then
> hvad er der gået galt...

Det er altid en god ide at tælle paranteser (hvis man ikke har highlight i
editoren).

Læg mærke til du har 3 venstre paranteser, og kun 2 højre.

--
Med venlig hilsen
Stig Johansen

Mads Brinch (14-02-2010)
Kommentar
Fra : Mads Brinch


Dato : 14-02-10 17:34

for lige at vende tilbage til hvad problemet egentlig var, for jeg
kan sagtens logge in, men det er når jeg er logget in skriver den
ikke navnet på siden som den skal men den skriver det fint nok i
adresse linien

log in formen

<%
Dim adoCon
Dim strCon
Dim rsCheckUser
Dim strAccessDB
Dim strSQL
Dim strUserName

strUserName = Request.Form("txtUserName")

strAccessDB = "db/pass.mdb"

Set adoCon = Server.CreateObject("ADODB.Connection")

strCon = "DRIVER={Microsoft Access Driver
(*.mdb)};uid=;pwd=letmein; DBQ=" & Server.MapPath(strAccessDB)

adoCon.Open strCon

Set rsCheckUser = Server.CreateObject("ADODB.Recordset")

strSQL = "SELECT tblUsers.Password FROM tblUsers WHERE
tblUsers.UserID ='" & replace(strUserName, "'", "''") & "'"

rsCheckUser.Open strSQL, strCon

If NOT rsCheckUser.EOF Then

If (Request.Form("txtUserPass")) = rsCheckUser("Password") Then

Session("blnIsUserGood") = True

Set adoCon = Nothing
Set strCon = Nothing
Set rsCheckUser = Nothing

Response.Redirect"/karakterbogen/site/zemvtbagj.asp?name=" &
strUserName
End If
End If

Set adoCon = Nothing
Set strCon = Nothing
Set rsCheckUser = Nothing

Session("blnIsUserGood") = False

Response.Redirect"fejl.asp"
%>



siden hvor navnet gerne skulle stå på

<%
If Session("blnIsUserGood") = False or
IsNull(Session("blnIsUserGood")) = True then
Response.Redirect"fejl.asp"
End If
%>
<%
Response.Buffer=False
Response.Expires = 60
Response.ExpiresAbsolute = #1980-01-01#
Response.Expiresabsolute = Now() - 1
Response.AddHeader "pragma", "no-cache"
Response.AddHeader "cache-control", "no-cache, must-revalidate"
Response.AddHeader "cache-control", "no-store, must-revalidate"
Response.AddHeader "cache-control","private"
Response.CacheControl = "Private"
Response.AddHeader "Last-Modified", Now & " GMT"
%>
<% Dim strTitle
strTitle="Velkommen"%>

<head>
<meta http-equiv="Content-Language" content="da">
<meta http-equiv="Content-Type" content="text/html;
charset=windows-1252">
<meta name="GENERATOR" content="Microsoft FrontPage 6.0">
<meta name="ProgId" content="FrontPage.Editor.Document">
<link rel="stylesheet" type="text/css" href="../style/bg.css">
</head>

<body>

<div align="center" style="letter-spacing:
10px;"><h1><%=request.querystring("UserID")%></h1></div>
<hr/>

det er i <%=request.querystring("UserID")%> den ikke skriver noget
men der skulle gerne stå navnet som det gør i adresselinjen











--
Vil du lære at kode HTML, XHTML, CSS, SSI, ASP eller ASP.NET?
- Pædagogiske tutorials på dansk
- Kom godt i gang med koderne
KLIK HER! => http://www.html.dk/tutorials

Christian Kragh (14-02-2010)
Kommentar
Fra : Christian Kragh


Dato : 14-02-10 21:54

> strSQL = "SELECT tblUsers.Password FROM tblUsers WHERE
> tblUsers.UserID ='" & replace(strUserName, "'", "''") & "'"
>
> Response.Redirect"/karakterbogen/site/zemvtbagj.asp?name=" & strUserName
>
> siden hvor navnet gerne skulle stå på
> 10px;"><h1><%=request.querystring("UserID")%></h1></div>
> <hr/>
>
> det er i <%=request.querystring("UserID")%> den ikke skriver noget
> men der skulle gerne stå navnet som det gør i adresselinjen

Prøv med det navn du sender over:
.... Response.Redirect"/karakterbogen/site/zemvtbagj.asp?name=" & strUserName
Du skal ikke spørge efter request.querystring("UserID") da det er dit
database felt du har som id.

Du skal spørge efter name... Det er jo det du har skrevet som id i din url.
request.querystring("name") ville være det rigtige.

Christian


Mads Brinch (15-02-2010)
Kommentar
Fra : Mads Brinch


Dato : 15-02-10 07:49

Det virkede... 1000tak for hjælpen...^^

--
Vil du lære at kode HTML, XHTML, CSS, SSI, ASP eller ASP.NET?
- Pædagogiske tutorials på dansk
- Kom godt i gang med koderne
KLIK HER! => http://www.html.dk/tutorials

Søg
Reklame
Statistik
Spørgsmål : 177414
Tips : 31962
Nyheder : 719565
Indlæg : 6407847
Brugere : 218876

Månedens bedste
Årets bedste
Sidste års bedste