Jeg skal bruge en session tror jeg
mit spørgsmål går ud på følgende.. jeg har lavet en dagbog som skal kunne bruge af alle mine brugere, den skal gemme hvem der har skrevet hvad ved hjælp af brugerens personid, som er skabt ud fra hvornår personen oprettede sig.Mine brugere kan nu logge ind med deres egene brugernavne og passwords, men når jeg gemmer dataen bliver den stadig gemt, i en stor pærevælling!
når brugeren logger ind henter jeg alle data fra den kollone som har det indskrevne brugernavn og password i sig, disse informationer ligger i en tabel, og så vil jeg gerne gemme alle indlæg i en anden tabel
Tabellerne hedder som følger:
PersonTabel : indenholder brugernavn, password og PersonID
dagbogsindlaeg : indenholder alle dagbogsinlæg og kan hentes ved hjælp af PersonID
Min kode ser ud som følgende:
Man trykker på login og kommer til følgende side:
<%@LANGUAGE="VBSCRIPT"%>
<%
id = Request.QueryString("id")
funktion = Request.QueryString("funktion")
If Session("validering") = "valid" then
If funktion = "opret" then
Response.Redirect("opret.asp?id=" & id)
ElseIf funktion = "opdater" then
Response.Redirect("opdater.asp?id=" & id)
Else
Response.Redirect("slet.asp?id=" & id)
End If
End If
If Request.QueryString("Submit") <> "" Then
Email = Trim(Replace(Request.QueryString("Email"),"'","''" ))
Password = Trim(Replace(Request.QueryString ("Password"),"'","''" ))
%>
<!--#include file="forbindelse.asp" -->
<%
Set autoriseret = Server.CreateObject ("ADODB.Recordset")
autoriseret.Open "SELECT * FROM PersonTabel WHERE Email = '" & Email & "' AND Password = '" & Password & "'", database
If Not autoriseret.EOF then
Session("validering") = "valid"
If funktion = "opret" then
Response.Redirect("opret.asp?id=" & id)
ElseIf funktion = "opdater" then
Response.Redirect("opdater.asp?id=" & id)
Else
Response.Redirect("slet.asp?id=" & id)
End If
End If
End If
%>
<html>
<head>
<title>Validering</title>
</head>
<body bgcolor="#FFFFFF" text="#000000">
<form name="form1" method="get" action="">
<p> Email:
<input type="text" name="Email">
</p>
<p>Password:
<input type="Password" name="Password">
<input type="submit" name="Submit" value="Login">
</p>
<input type="hidden" name="funktion" value="<% = funktion%>">
<input type="hidden" name="id" value="<% = id%>">
</form>
</body>
</html>
Når man indskriver de rigtige informationer kommer man til :
<%@LANGUAGE="VBSCRIPT"%>
<%
If Session("validering") <> "valid" Then Response.Redirect("dagbog.asp")
If Request.QueryString("Submit") <> "" Then
set JMail = Server.CreateObject("JMail.Speedmailer")
Set database = Server.CreateObject("ADODB.Connection")
database.Open ("Provider=Microsoft.Jet.OLEDB.4.0;Data Source=c:\inetpub\db\dagbog.mdb")
Set indlaeg = Server.CreateObject("ADODB.Recordset")
indlaeg.Open "dagbogsindlaeg", database, 2, 2
indlaeg.AddNew
indlaeg("overskrift") = Request.QueryString("overskrift")
indlaeg("dato") = Request.QueryString("dato")
indlaeg("indlaeg") = Request.QueryString("indlaeg")
If Request.QueryString("link") <> "" then
indlaeg("link") = Request.QueryString("link")
End If
indlaeg.Update
Set emailadr = Server.CreateObject("ADODB.Recordset")
emailadr.Open "SELECT * FROM mailingliste", database
While NOT emailadr.EOF
JMail.SendMail "afsender@mail.dk", emailadr.Fields("email"), "Så er det nyt i dagbogen!", "Hej, smut lige forbi www.mitwebsted.dk/dagbog.asp, og se det nye indlæg", "mail.tele.dk"
emailadr.MoveNext
Wend
Response.Redirect("dagbog.asp")
End If
%>
<html><title>Opret</title>
<body bgcolor="#FFFFFF">
<form name="form1" method="get" action="opret.asp">
Overskrift:
<input type="text" name="overskrift">
<br>
Dato:
<input type="text" name="dato">
(22-03-2002)<br>
Indlæg.:
<textarea name="indlaeg" rows="8"></textarea>
<br>
Link:
<input type="text" name="link">
(www.cnn.dk)<br>
<br>
<input type="submit" name="Submit" value="Opret">
</form>
</body>
</html>
Jeg vil så gerne have at den indskriver PersonID samtidig med at den laver indlaeg.AddNew funktionen
Jeg håber på hjælp.. da jeg er LOST!!!
Takker
