14. januar 2005 - 12:42
Der er
3 kommentarer
presse login
Jeg vil gerne lave et presse login når man klikker på knappen presse på mit website. Den skal give adgang til en en mappe med presse indhold som jeg har samme sted som sitet...hvodan gør man det. Jeg arbejder i Dreamweaver.
20. januar 2005 - 21:40
#1
Du kan vælge at arbejde enten med javaScript eller programmere med f.eks. asp.
hvid du arbejder i asp. skal du også bruge en database. f.eks. access.
fra dit link kan du oprette en side der hedder presselogin.asp
koden til denne kunne se sådan ud.
<!--her starter koden-->
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<%
' Hvis der er blevet trykket på knappen "Login" sker følgende:
If Request.Form("Action") = "Login" Then
' Her forberedes de indtastede værdier til validering
strUID = Trim(Replace(Request.Form("Brugernavn"),"'",""))
strPWD = Trim(Replace(Request.Form("Adgangskode"),"'",""))
' Der tjekkes om der er skrevet noget i både brugernavn og password
If Len(strUID) > 0 And Len(strPWD) > 0 Then
' hvis der er skrevet noget i både brugernavn og password udføres følgende
' forbindelse til databasen oprettes
Set myConn = Server.CreateObject("ADODB.Connection")
myConn.Open "DRIVER={Microsoft Access Driver (*.mdb)};DBQ=" & Server.MapPath("login.mdb")
' Der opbygges en SQL streng hvor der tjekkes om det indtastede brugernavn og password findes-
'i databasen
strSQL = "SELECT UserID FROM Users"&_
" WHERE (Username = '" & strUID & "')"&_
" AND (Password = '" & strPWD & "')"
Set rs = myConn.Execute(strSQL)
If Not (rs.BOF Or rs.EOF) Then
' Hvis brugeren fandtes i databasen sætte "intUID" til det der står i databasen under "userID"
intUID = rs("UserID")
Else
' Hvis brugeren ikke fandtes i databasen udskrives følgende
strERR = "Du er ikke en gyldig bruger."
End If
' lukker forbindelsen tildatabasen igen
myConn.Close
Set myConn = Nothing
If Len(intUID) Then
' Hvis variablen intUID indeholder en værdi sættes denne i sessionen "UserID" og brugeren bliver sendt videre
Session("UserID") = intUID
Response.Redirect("denSideDerSkalLinkesTIL.asp")
End If
Else
' Hvis der ikke var angivet brugernavn og adgangskode udskrives dette i stedet
strErr = "Du skal skrive både brugernavn og adgangskode"
End If
If Len(strErr) > 0 Then
' Her laves fejlmeddelsen om til rød skrift
strErr = "<p><font color=red>" & strErr & "</font></p>"
End If
End If
%>
<html>
<head>
<title>Untitled Document</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
</head>
<body bgcolor="#f2f8fc" leftmargin="0" topmargin="0" marginwidth="0" marginheight="0">
<table width="100%" height="100%" border="0">
<tr>
<td > </td>
<td width="96%">
<form method="POST" action="login.asp">
<p><font size="4">Angiv brugernavn og adgangskode</font></p>
<%=strErr%>
<table border="0">
<tr>
<td width="50%">Brugernavn:</td>
<td width="50%"><input type="text" name="Brugernavn" size="20"></td>
</tr>
<tr>
<td width="50%">Adgangskode:</td>
<td width="50%"><input type="password" name="Adgangskode" size="20"></td>
</tr>
</table>
<!--submitknap sættis ind og tilpasses til siden-->
<p>
<input type="submit" value="Login" name="Action" style='background: f2f8fc; color: 000000;
font-family: Arial'/>
</p>
</form>
</td>
<td> </td>
</tr>
</table>
</body>
</html>
<!--her slutter koden-->
dette kræver at du har en Access database, som hedder login, med en tabel der hedder Users... I denne tabel har du 3 Celler:
celle1 hedder UserId skal være autonumerering
celle2 hedder Username skal være tekst
celle3 hedder Password skal være tekst
så kan du oprette den første post, hvor du kalder usernavn for test og password for test...
det skriver du så i dine loginforms, når du skal logge ind..
Husk at du skal have det op på en server der understøtter det for at teste, eller at det skal testes på din localhost.