/ 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
if sætning og Response.Redirect
Fra : mcfritten


Dato : 02-05-03 16:23

Hej har et lille problem, jeg har fået sammensat noget kode, men
kan ikke få det at virke efter hensigten koden er:
' SQL forespørgsel
strSQL = "SELECT * FROM brugerlogin WHERE email='" & modtager &
"'"
Set rs = Conn.Execute(strSQL)

If Not rs.eof then
      password = rs("brugerkode")
      brugernavn = rs("brugernavn")
Response.write "<p>Den indtastede e-mailadresse (<b>" &
modtager & "</b>) blev ikke fundet i systemet!"
   fejl = true
end if
Conn.Close
Set Conn = Nothing
If fejl = false Then
Response.Redirect "send.asp"
end if

Det er de sidste 3 linier, oppe over der har jeg lavet en kode
der tjekker om den email adresse en bruger har skrevet findes i
min database, og hvis den gøre skal den gerne gå vidre til en
side der hedder send.asp, hvorfra den sender en mail til den
bruger med sit bruger navn og password, alt det andet har jeg
lavet med det er bare det med at gå vidre derfra..

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

 
 
René Jensen (02-05-2003)
Kommentar
Fra : René Jensen


Dato : 02-05-03 17:23

mcfritten wrote:
> Det er de sidste 3 linier, oppe over der har jeg lavet en kode
> der tjekker om den email adresse en bruger har skrevet findes i
> min database, og hvis den gøre skal den gerne gå vidre til en
> side der hedder send.asp, hvorfra den sender en mail til den
> bruger med sit bruger navn og password, alt det andet har jeg
> lavet med det er bare det med at gå vidre derfra..

Det kan gøres meget nemmere. Efter du har hevet data fra din database
tjekker du selvf. at brugernavn er korrekt (hvilke gøres vha.
WHERE-parametren i SQL'en), herefter indsætter du bare din ASP kode til
at sende en mail, som f.eks. kan gøres vha. ASPMail, JMail eller lign.
Der er ingen grund til at redirect'e til en anden side.

Med venlig hilsen,
René Jensen

P.S. Prøv at gennemlæse dit indlæg før du poster.


mcfritten (02-05-2003)
Kommentar
Fra : mcfritten


Dato : 02-05-03 18:00

René Jensen wrote in dk.edb.internet.webdesign.serverside.asp:
>
> Det kan gøres meget nemmere. Efter du har hevet data fra din database
> tjekker du selvf. at brugernavn er korrekt (hvilke gøres vha.
> WHERE-parametren i SQL'en), herefter indsætter du bare din ASP kode til
> at sende en mail, som f.eks. kan gøres vha. ASPMail, JMail eller lign.
> Der er ingen grund til at redirect'e til en anden side.
>
> Med venlig hilsen,
> René Jensen
>
> P.S. Prøv at gennemlæse dit indlæg før du poster.
>
Det er jo lige det på min send.asp side er jmail til at sende med.
Kunne ikke svare dig i kandu, ved ikke hvorfor??

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

mcfritten (02-05-2003)
Kommentar
Fra : mcfritten


Dato : 02-05-03 18:14

Tak for det René Jensen..
Kunne ikke lige finde ud af hvad der var galt, så jeg ikke kunne skrive
en kommentar herinde.. c",)

--
Leveret af:
http://www.kandu.dk/
"Vejen til en hurtig løsning"


Jens Gyldenkærne Cla~ (02-05-2003)
Kommentar
Fra : Jens Gyldenkærne Cla~


Dato : 02-05-03 22:46

René Jensen skrev:

> Det kan gøres meget nemmere. Efter du har hevet data fra din
> database tjekker du selvf. at brugernavn er korrekt (hvilke
> gøres vha. WHERE-parametren i SQL'en)

WHERE-delen udføres sammen med resten af SQL-sætningen af
databasen. Hvis man blot skal se om alt er korrekt eller ej kan man
med fordel lægge alle kriterier i WHERE-delen. Men hvis man vil
kunne give besked hvis brugernavnet fx er forkert skal man
sammenligne brugernavet i asp (i begge tilfælde skal man være
opmærksom på at der skal skrives ekstra kode hvis emailadressen
ikke er unik i tabellen).
--
Jens Gyldenkærne Clausen
Svar venligst under det du citerer, og citer kun det der er
nødvendigt for at forstå dit svar i sammenhængen. Se hvorfor og
hvordan på http://usenet.dk/netikette/citatteknik.html

Jens Gyldenkærne Cla~ (02-05-2003)
Kommentar
Fra : Jens Gyldenkærne Cla~


Dato : 02-05-03 22:55

mcfritten skrev:

> Hej har et lille problem, jeg har fået sammensat noget kode, men
> kan ikke få det at virke efter hensigten koden er:

(et punktum eller to ville hjælpe lidt på læseligheden af dit
indlæg)

Fejlbeskrivelsen "det virker ikke" kan ikke bruges til noget
fornuftigt. Prøv at læse artiklen her om hvordan man stiller gode
spørgsmål i gruppen: <http://asp-faq.dk/article/?id=41>

Lidt spredte kommentarer til din kode følger.


> If Not rs.eof then

Koden i if-blokken her køres hvis der er fundet en post.
> password = rs("brugerkode")
> brugernavn = rs("brugernavn")

Linjerne her er meget logiske.

> Response.write "<p>Den indtastede e-mailadresse (<b>" &
> modtager & "</b>) blev ikke fundet i systemet!"
> fejl = true

Men hvorfor står ovenstående linjer i samme blok? Jeg tror du har
glemt et "else" før de tre linjer herover.


> If fejl = false Then

If-sammenligninger med booleske variable kan skrives uden true
eller false.
   If (fejl) Then
- svarer til
   If fejl = true
- tilsvarende kan din linje ovenfor skrives "If Not fejl Then"

(der er ikke noget galt i at skrive fejl = false, det er bare ikke
nødvendigt).

> Response.Redirect "send.asp"

Som Rene også har skrevet behøver du ikke en anden side til at
sende mailen.
--
Jens Gyldenkærne Clausen
Svar venligst under det du citerer, og citer kun det der er
nødvendigt for at forstå dit svar i sammenhængen. Se hvorfor og
hvordan på http://usenet.dk/netikette/citatteknik.html

mcfritten (03-05-2003)
Kommentar
Fra : mcfritten


Dato : 03-05-03 08:57

Er det så sådan du tænkte på den skulle sættes op:
<%
Dim password, brugernavn, modtager, fejl
fejl = false

modtager = Request.Form("modtager")

Set Conn = Server.CreateObject("ADODB.Connection")
DSN = "DRIVER={Microsoft Access Driver (*.mdb)}; "
DSN = DSN & "DBQ=" & Server.MapPath ("bruger.mdb")
Conn.Open DSN
Dim samletAntal

' SQL forespørgsel
strSQL = "SELECT * FROM brugerlogin WHERE email='" & modtager & "'"
Set rs = Conn.Execute(strSQL)

If Not rs.eof then
      password = rs("brugerkode")
      brugernavn = rs("brugernavn")
else
Response.write "<p>Den indtastede e-mailadresse (<b>" & modtager
& "</b>) blev ikke fundet i systemet!"
   fejl = true
end if
Conn.Close
Set Conn = Nothing
If fejl = false Then

Set jmail = Server.CreateObject("JMail.Message")
   jMail.sendername = "Password til Mcfritten.dk...?" '<<Overskrift
her!
   jMail.sender = "webmaster@mcfritten.dk" '<<Din mail-adresse her!

   jMail.ServerAddress = "mail.mcfritten.dk" '<<Din mailserver her!
   jMail.AddRecipient modtager
         
   jMail.Body = "Hej " & brugernavn & "!" & vbNewLine & vbNewLine & "Du
har bedt om at få dit password tilsendt." & vbNewLine & vbNewLine &
"Dit password er: " & brugerkode & vbNewLine & vbNewLine & "Med
venlig hilsen Webmaster" & vbNewLine & vbNewLine &
"http://www.mcfritten.dk" & vbNewLine & "webmaster@mcfritten.dk"
            
   jMail.Execute
   jMail.Close         
   Set jMail = Nothing

   Response.write "<p>Dit password er blevet sendt til <a
href='mailto:" & modtager & "'>" & modtager & "</a>"
end if
   Response.write "<p><a href=javascript:history.back()>Tilbage</a>"

%>


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

Jens Gyldenkærne Cla~ (03-05-2003)
Kommentar
Fra : Jens Gyldenkærne Cla~


Dato : 03-05-03 10:40

mcfritten skrev:

> Er det så sådan du tænkte på den skulle sættes op:

Ja, det er en mulighed. Man kunne nøjes med en enkelt if-sætning,
men så vidt jeg kan overskue vil dit nuværende forslag også
fungere.

NB: Læs gerne min signatur - det er noget lettere at følge med i
tråden hvis du citerer lidt af det du svarer på (husk at angive
hvem der har skrevet citatet).
--
Jens Gyldenkærne Clausen
Svar venligst under det du citerer, og citer kun det der er
nødvendigt for at forstå dit svar i sammenhængen. Se hvorfor og
hvordan på http://usenet.dk/netikette/citatteknik.html

Søg
Reklame
Statistik
Spørgsmål : 177551
Tips : 31968
Nyheder : 719565
Indlæg : 6408834
Brugere : 218887

Månedens bedste
Årets bedste
Sidste års bedste