Avatar billede no_doubt Nybegynder
29. oktober 2002 - 15:43 Der er 36 kommentarer og
2 løsninger

email + send "random"

Hvordan laver man sådan at man kan tjekke den rigtige adresse altså sender et link til den pågældene som så aktiver navnet 0=1
Avatar billede loss Nybegynder
29. oktober 2002 - 15:52 #1
Jeg går udfra at du skal bruge det til registrering som bruge på et website..

I det øjeblik en bruges registere sig.. Oprette du alle han data i tabellen, og sætter "active" = 0..

Så sender du ham en mail (via aspmail eller jmail... din server skal understøtte det).. hvor der er indkluderet et link i. Som linker til en side på din server hvor du udfører En sql sætning der opdatere databasen.. Sådan at "active" = 1..
Avatar billede no_doubt Nybegynder
29. oktober 2002 - 15:54 #2
ja men det er jo at få genereret den side + sende mailen
Avatar billede loss Nybegynder
29. oktober 2002 - 15:57 #3
Her har du et jmail script
'først sætter du ID til at være den id der lige er blevet oprettet i databasen, med en sql forespørgsel.. evt på det brugernavn der lige er blevet oprettet en som...



Set JMail          = Server.CreateObject("JMail.SMTPMail")
  JMail.ServerAddress = "din mailserver"
  JMail.Sender        = From
  JMail.Subject      = Subject
  jMail.AddRecipient  rs("Email")
  JMail.Priority      = 3 ' 1 - highest priority (Urgent)  3 - normal  5 - lowest
  JMail.ContentType  = "text/html"
  JMail.AddHeader    "Originating-IP", Request.ServerVariables("REMOTE_ADDR")
 
  ' ********** Her starter selve email-en
  JMail.Body = message & "<a href='www.ditdomæne.dk/activate.asp?"&ID&"'></a>"
  ' ********** Her slutter selve email-en
 
  JMail.Execute
 
  Set JMail = Nothing
Avatar billede jelzin101 Praktikant
29. oktober 2002 - 15:58 #4
no doubt>> du kan jo lave det sådan at du i databasen opretter et felt med en tilfældig værdi for brugeren, linket i mailen kan så være aktiver?nr=1534351231531 -så er det jo bare at hente variablen nr fra url'en - drøne den gennem noget sql der updater det et felt ved navn aktiveret (sætter det til 1) hvor id = den tilfældige værdi (eller inkrementerede værdig.
Avatar billede loss Nybegynder
29. oktober 2002 - 15:58 #5
Og så i ASP filen gør du såen her

dim
ID = request.querystring("ID")

strDNS = ""
set rs = Server.CreateObject("ADODB.Recordset")
strSQL = "UPDATE TABEL SET ACTIVE = 1 WHERE ID = " & ID
rs.open strSQL,strDNS
Avatar billede no_doubt Nybegynder
29. oktober 2002 - 15:59 #6
Hvordan skulle activate.asp se ud samt sql'en ?
Avatar billede no_doubt Nybegynder
29. oktober 2002 - 16:00 #7
kan du evt prøve at sende nogel filer, at oprette en, en side som indsætter mail, navn osv. kan jeg nok godt men resten, tja..
Avatar billede loss Nybegynder
29. oktober 2002 - 16:01 #8
<%
dim, strDNS, rs, strSQL
ID = request.querystring("ID")

strDNS = ""
set rs = Server.CreateObject("ADODB.Recordset")
strSQL = "UPDATE TABEL SET ACTIVE = 1 WHERE ID = " & ID
rs.open strSQL,strDNS

' evt sæt dine logins sessions, og redirect ham til "members area" så er han auto logget ind..

Response.redirect("Ditdomæne")
%>
Avatar billede loss Nybegynder
29. oktober 2002 - 16:02 #9
Ok... jeg prøver lige at bikse det sammen... hæng på..
Avatar billede no_doubt Nybegynder
29. oktober 2002 - 16:03 #10
You've got it
Avatar billede loss Nybegynder
29. oktober 2002 - 16:08 #11
Her har du oprettelses filen....

<%

Dim name, Email, Password
Name = request.form("Name")
Email = request.form("Email")
Password = request.form("Email")
' OSV OSV

strDNS = ""
set rs = Server.CreateObject("ADODB.Recordset")
strSQL = "INSERT INTO MEMBERS (Name, Email, Password, Active) VALUES (' " & Name & "', '" & Email & "', '" & Password & "', '0')"
rs.open strSQL,strDNS

set rs = Server.CreateObject("ADODB.Recordset")
strSQL = "SELECT ID, EMAIL FROM MEMERS WHERE NAME = " & Name & ""
rs.open strSQL,strDNS


Set JMail          = Server.CreateObject("JMail.SMTPMail")
  JMail.ServerAddress = "din mailserver"
  JMail.Sender        = From
  JMail.Subject      = Subject
  jMail.AddRecipient  rs("Email")
  JMail.Priority      = 3 ' 1 - highest priority (Urgent)  3 - normal  5 - lowest
  JMail.ContentType  = "text/html"
  JMail.AddHeader    "Originating-IP", Request.ServerVariables("REMOTE_ADDR")
 
  ' ********** Her starter selve email-en
  JMail.Body = message & "<a href='www.ditdomæne.dk/activate.asp?ID="&RS("ID")&"'></a>"
  ' ********** Her slutter selve email-en
 
  JMail.Execute
 
  Set JMail = Nothing
 
  rs.close
  set rs = nothing
 
  response.redirect ("TIL EN SIDE HVOR DU SKRIVER.. BLA BLA EN EMAIL ER SENDT TIL DIN MAILBOX OSV OSV OSV")
%>

Og ASP filen har jeg lavet til dig..
Avatar billede no_doubt Nybegynder
29. oktober 2002 - 16:13 #12
var det måske ikke en ok ide med den der random kode ?
Avatar billede loss Nybegynder
29. oktober 2002 - 16:15 #13
Jo det kunne man godt bruge istedet for det med at sende IDén med....

Men IDén er 100% unik.. det vil en tilfældig kode ikke være, omendt det nok aldrig ville ske at der kommer 2 ens ;)
Avatar billede loss Nybegynder
29. oktober 2002 - 16:18 #14
her er en ny med en kode i..

<%
Function RandomPW(myLength)
    'These constant are the minimum and maximum length for random
    'length passwords.  Adjust these values to your needs.
    Const minLength = 6
    Const maxLength = 20
   
    Dim X, Y, strPW
   
    If myLength = 0 Then
        Randomize
        myLength = Int((maxLength * Rnd) + minLength)
    End If

   
    For X = 1 To myLength
        'Randomize the type of this character
        Y = Int((3 * Rnd) + 1) '(1) Numeric, (2) Uppercase, (3) Lowercase
       
        Select Case Y
            Case 1
                'Numeric character
                Randomize
                strPW = strPW & CHR(Int((9 * Rnd) + 48))
            Case 2
                'Uppercase character
                Randomize
                strPW = strPW & CHR(Int((25 * Rnd) + 65))
            Case 3
                'Lowercase character
                Randomize
                strPW = strPW & CHR(Int((25 * Rnd) + 97))

        End Select
    Next
   
    RandomPW = strPW

End Function



Dim name, Email, Password
Name = request.form("Name")
Email = request.form("Email")
Password = request.form("Password")
Code = RandomPW(8)
' OSV OSV

strDNS = ""
set rs = Server.CreateObject("ADODB.Recordset")
strSQL = "INSERT INTO MEMBERS (Name, Email, Password, Active, Activatecode) VALUES (' " & Name & "', '" & Email & "', '" & Password & "', '0', '" & Code & "')"
rs.open strSQL,strDNS

Set JMail          = Server.CreateObject("JMail.SMTPMail")
  JMail.ServerAddress = "din mailserver"
  JMail.Sender        = From
  JMail.Subject      = Subject
  jMail.AddRecipient  rs("Email")
  JMail.Priority      = 3 ' 1 - highest priority (Urgent)  3 - normal  5 - lowest
  JMail.ContentType  = "text/html"
  JMail.AddHeader    "Originating-IP", Request.ServerVariables("REMOTE_ADDR")
 
  ' ********** Her starter selve email-en
  JMail.Body = message & "<a href='www.ditdomæne.dk/activate.asp?Code="&Code&"'></a>"
  ' ********** Her slutter selve email-en
 
  JMail.Execute
 
  Set JMail = Nothing
 
  response.redirect ("TIL EN SIDE HVOR DU SKRIVER.. BLA BLA EN EMAIL ER SENDT TIL DIN MAILBOX OSV OSV OSV")
%>
Avatar billede loss Nybegynder
29. oktober 2002 - 16:19 #15
Og så skal ASP filen se således her ud..

<%
dim, strDNS, rs, strSQL
Code= request.querystring("Code")

strDNS = ""
set rs = Server.CreateObject("ADODB.Recordset")
strSQL = "UPDATE TABEL SET ACTIVE = 1 WHERE ACTIVateCODE= " & code
rs.open strSQL,strDNS

' evt sæt dine logins sessions, og redirect ham til "members area" så er han auto logget ind..

Response.redirect("Ditdomæne")
%>
Avatar billede loss Nybegynder
29. oktober 2002 - 16:36 #16
kan du få det til at virke ?
Avatar billede no_doubt Nybegynder
29. oktober 2002 - 16:44 #17
hvad der de der dim's
Avatar billede loss Nybegynder
29. oktober 2002 - 16:45 #18
Der dimensionere man sine variabler.... ligesom man i javscript bruger Var

De skal ikke være der, men er god kodestil.. at man dimensionere alle sine variabler...
Avatar billede loss Nybegynder
29. oktober 2002 - 17:02 #19
Nåååå jeg vender tilbage senere iaften... se om du ikke kan få det til at virke... Hvis du får nogle fejlmeddelser så bare skrive dem her så kan vi jo kigge på det senere...
//LOSS
Avatar billede no_doubt Nybegynder
29. oktober 2002 - 17:06 #20
har skrevet denne linje om : set rs = server.CreateObject("ADODB.Recordset")
Conn.Open "Provider=Microsoft.Jet.OLEDB.4.0;" & "Data Source="& Server.MapPath("db.mdb")
strSQL = "INSERT INTO brugere (Name, Email, Password, Active, Activatecode) VALUES (' " & Name & "', '" & Email & "', '" & Password & "', '0', '" & Code & "')"
rs.open strSQL

hvordan laver jeg den så den virker *g*
Avatar billede no_doubt Nybegynder
29. oktober 2002 - 17:21 #21
denne her i ren "almindelig" kode
set conn = server.CreateObject("ADODB.Recordset")
conn.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source="& server.mappath("db.mdb")
strSQL = "INSERT INTO brugere (Name, Email, Password, Active) VALUES (' " & Name & "', '" & Email & "', '" & Password & "', '0')"
Set rs = Conn.Execute(strSQL)

set rs = Server.CreateObject("ADODB.Recordset")
strSQL = "SELECT id, Email FROM brugere WHERE Name = " & Name & ""
rs.open strSQL
Avatar billede loss Nybegynder
29. oktober 2002 - 18:54 #22
Hvad melder den af fejl ?
Avatar billede no_doubt Nybegynder
29. oktober 2002 - 18:56 #23
ADODB.Recordset error '800a0e7d'

The connection cannot be used to perform this operation. It is either closed or invalid in this context.

/test/opret.asp, line 51
Avatar billede loss Nybegynder
29. oktober 2002 - 18:56 #24
Prøv det her istedet

strDNS = "Provider=Microsoft.Jet.OLEDB.4.0;" & "Data Source="& Server.MapPath("db.mdb")
set rs = Server.CreateObject("ADODB.Recordset")
strSQL = "INSERT INTO brugere (Name, Email, Password, Active, Activatecode) VALUES (' " & Name & "', '" & Email & "', '" & Password & "', '0', '" & Code & "')"
rs.open strSQL,strDNS
Avatar billede no_doubt Nybegynder
29. oktober 2002 - 19:01 #25
Microsoft JET Database Engine error '80040e14'

Syntax error in INSERT INTO statement.

/test/opret.asp, line 53

Ny fejl
Avatar billede loss Nybegynder
29. oktober 2002 - 19:16 #26
Havde du ikke lavet den her del på forhånd.. inden du ville lave det andet, med Email notification ?
Avatar billede no_doubt Nybegynder
29. oktober 2002 - 19:18 #27
hvilken del, det er i den ser del der skal sende oplysningerne
Avatar billede loss Nybegynder
29. oktober 2002 - 19:25 #28
Det med at tilføje brugere til din database når de tilmelder sig ?
Avatar billede no_doubt Nybegynder
29. oktober 2002 - 19:26 #29
Det er da en integreret det i dit script i form af

strDNS = "Provider=Microsoft.Jet.OLEDB.4.0;" & "Data Source="& Server.MapPath("db.mdb")
set rs = Server.CreateObject("ADODB.Recordset")
strSQL = "INSERT INTO brugere (Name, Email, Password, Activate, Activatecode) VALUES (' " & Name & "', '" & Email & "', '" & Password & "', '0', '" & Code & "')"
rs.open strSQL,strDNS

set rs = Server.CreateObject("ADODB.Recordset")
strSQL = "SELECT id, Email FROM brugere WHERE Name = " & Name & ""
rs.open strSQL
Avatar billede loss Nybegynder
29. oktober 2002 - 19:32 #30
Ja men siden det melder fejl, vil det da være nemmere at tage det du havde lavet på forhånd og integere det andet i det...
Avatar billede no_doubt Nybegynder
29. oktober 2002 - 23:38 #31
kan du ikke se om du kan se fejlen ?
Avatar billede loss Nybegynder
29. oktober 2002 - 23:52 #32
Det er en lidt underlig fejl den melder... jeg forstår den ikke lige helt.. for det burde virke... gør det ihvertfald her, med den kode jeg har skrevet. Jeg skriver heller ikke til en acces database, men derimod mysql.. ved ikke om det er der fejlen kan ligge ?..
Avatar billede loss Nybegynder
30. oktober 2002 - 00:00 #33
Vi kan lige kigge videre på det imorgen.. nu kalder køjen..

buhuuuu ja jeg ved godt det er tidligt.. men fjernsynet skal jó osse passes :)
Avatar billede no_doubt Nybegynder
30. oktober 2002 - 00:00 #34
http://www.1q.frip.dk/test/ det er der jeg tester
Avatar billede loss Nybegynder
30. oktober 2002 - 11:27 #35
hmm meget underlig fejl den melder....

btw sæt lige dit password til at være

<input type="password">
Avatar billede no_doubt Nybegynder
06. november 2002 - 17:32 #36
det virker ikke
Avatar billede no_doubt Nybegynder
12. november 2002 - 23:30 #37
nederen nok hvis vi/du ikke kan finde fejlen når vi er så langt...
Avatar billede no_doubt Nybegynder
01. december 2002 - 20:01 #38
nå men så deler jeg dem altså.
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester