Hvad står der i rs("info") ? Er det linket eller den tekst man klikke på?
Mht til: <A class=link4 HREF="java script:window.opener.parent.main.location='../xxx/xxxxx.asp';window.close();">Glemt password</A>
Du bruger "window.opener.parent.main.location", er "main" en frame/iframe eller hvad?
<script language="JavaScript">
if (opener.document.location == '
http://www.x.dk') {
// brugeren kommer fra x.dk.. udfør en eller anden kode:
document.write('<a href="<% response.write "
http://www.x.dk/glemtpassword_fra_x_dk.asp" %>"><% response.write rs("info") %></a>');
} else {
// brugeren kommer ikke fra x.dk, udfør noget andet kode:
document.write('<a href="<% response.write "
http://www.x.dk/glemtpassword_fra_andet_sted.asp" %>"><% response.write rs("info") %></a>');
}
</script>
Jeg ved ikke lige hvad det er du prøver på (har læst dit indlæg 07/12-2003 02:29:53)..
Du vil sende brugeren til et sted kræver dynamisk ændring af en links destination?
Har du et eller andet "id" du skal indsætte i urlen?
Ellers kunne du bare bruge:
<script language="JavaScript">
if (opener.document.location == '
http://www.x.dk') {
// brugeren kommer fra x.dk.. udfør en eller anden kode:
document.write('<a href="
http://www.x.dk/glemtpassword_fra_x_dk.asp"></a>');
} else {
// brugeren kommer ikke fra x.dk, udfør noget andet kode:
document.write('<a href="
http://www.x.dk/glemtpassword_fra_andet_sted_dk.asp"></a>');
}
</script>
Host lige om med nogle af de oplysninger, du mener er "top secret", og ikke vil fortælle os om dem.. eller må du bare forklare dig bedre..
Normalt er det sådan men en "glemt password"-funktion:
- Du har en form hvor brugeren indtaster sin email adresse.
- Der checkes så om email adressen eksisterer i databasen
- Hvis den eksisterer, sendes det tilhørende password, til den email adresse som er indtastet.
- Hvis den ikke eksisterer, får man bare en fejl meddelelse.
Hvis du prøver på at lave et eller andet smart, med at brugere klikker på et link der indeholder et id eller selve email adr, kan du nemt gøre det..
Linket i emailen er f.eks.:
http://www.dinside.dk/glemtpassword.asp?mail=min@email.dk-- glemtpassword.asp start --
<%
Option Explicit
' Option Explicit bør altid bruges samtidigt med at alle variabler defineres..
' Så undgår man stavefejl mht variabelnavne
' definer de variabler hvis skal bruge nu:
dim visform, mailid
visform = "no"
if request.form("myemail") <> "" then
' brugeren har indtastet email adressen via formen,
' udfør sikkerhedskode:
mailid = replace(request.form("myemail"), "'", "")
else
' brugeren har ikke indtastet email adr fra formen..
' check om der er en email adr i urlen:
if request.querystring("mail") <> "" then
' der står noget i "mail" i urlen,
' udfør sikkerhedskode:
mailid = replace(request.querystring("mail"), "'", "")
else
' der står ikke noget i urlen..
' dvs:
' 1) brugeren har ikke indtastet email adr fra formen
' 2) brugeren har ikke klikket på et link i en email der indeholder brugerens email adr
' med andre ord: brugeren har selv navigeret ind på glemtpassword.asp,
' der skal derfor vises en form
visform = "yes"
end if
end if
if visform = "no" then
' brugeren har enten indtastet email adr via formen,
' eller også har brugeren klikket på mail linket..
' der checkes om brugeren eksisterer i databasen..
' definer de variabler vi skal bruge nu:
dim MailID, strSQL, rs, Conn, DSN
' Databaseforbindelse - husk at angive sti til din database
Set Conn = Server.CreateObject("ADODB.Connection")
DSN = "DRIVER={Microsoft Access Driver (*.mdb)}; "
DSN = DSN & "DBQ=" & Server.MapPath("mindb.mdb")
Conn.Open DSN
strSQL = "Select * from tblMail where mailadr = '" & mailid & "'"
Set rs = Conn.Execute(strSQL)
if (not rs.bof) and (not rs.eof) then
' mailid'et er fundet, dvs email adressen eksisterer
' send passwordet til mailen der står i "mailid"
' mail komponent stater her, inkluderer følgende:
' ...
MAILKOMPONENT.Subject = "Glemt password"
MAILKOMPONENT.Body = "Dit password er: " & rs("password") & "."
' hvis MAILKOMPONENT er AspMail, skal der bruges:
' MAILKOMPONENT.BodyText = "Dit password er: " & rs("password") & "."
' ...
' SEND-MAIL kode her
else
response.write "Du er ikke registreret i vores database"
end if
conn.close
set conn = nothing
else
' da visform så er "yes", betyder det at brugeren lige er kommet ind på siden
' brugeren får en form hvor han/hun kan indtaste email adressen:
%>
<form name="frmPassword" action="glemtpassword.asp" method="post">
Indtast email: <input type="text" name="myemail">
<input type="submit" value="Send">
</form>
<% end if %>
-- glemtpassword.asp slut --
Til eksemplet, er jeg gået ud fra at:
- der bruges en Access database
- database filen hedder "mindb.mdb" og ligger i samme mappe som "glemtpassword.asp"
- database tabellen, der indeholder email adresse-feltet, hedder tblMail
- selve email adresse-feltet hedder "mailadr" og er af typen tekst
Mht koden til mail komponenten.. der findes koder til 3 forskellige mail komponenter her:
"Send e-mail med forskellige komponenter" -
http://www.opfinderen.dk/sites/?id=14Det skal lige siges, at jeg har skrevet eksemplet, men ikke fået testet det.
Jeg håber ikke at Eksperten kan ødelagt min indryk :) (krydse fingre)