Kaptein Snus Skrevet 9. juni 2010 Del Skrevet 9. juni 2010 (endret) // DERETTER GJØR DU # 1) Lagre denne hashen til databasen # 2) Bruker mail() til å sende en mail til brukerens email, # med en link som ber brukeren om å gå til activate.php?hash=$hash. # Med andre ord -- echo "<a href='activate.php?hash=" . $hash . "'>Trykk her for å aktivere din konto</a>"; -- echo '$to = '$user_mail'; $subject = 'Email verifisering på WeEx.Tk'; $message = 'Blablabla'; $headers = 'From: [email protected]' . "\r\n" . 'Reply-To: [email protected]' . "\r\n" . 'X-Mailer: PHP/' . phpversion(); mail($to, $subject, $message, $headers);'; } SI IFRA HVIS NOE ER FEIL.. Ja, det er forsåvdt riktig! // Dette gjør du #Bruk Warz sin sql kode her, for å oppdatere databasen med hashen. Hvis databasen ble oppdatert, kjører koden under, hvis ikke så send en feilmelding. $to = $user_mail; $subject = 'Email verifisering på WeEx.Tk'; $message = '<a href="www.weex.tk?activate.php?hash=' . $hash . '">Click her for å aktivere kontoen!</a>'; $headers = 'From: [email protected]' . "\r\n" . 'Reply-To: [email protected]' . "\r\n" . 'X-Mailer: PHP/' . phpversion(); if(mail($to, $subject, $message, $headers)) { echo "Du er nå registert! Sjekk emailen din for å aktivere brukeren!"; } else { echo "Kunne ikke sende verfiserings email. Prøv på nytt!"; } EDIT: Du burde sjekke ut Nettuts - How to Implement Email Verfication for New Members Endret 9. juni 2010 av Lek1 Lenke til kommentar
NicholasWalker Skrevet 9. juni 2010 Forfatter Del Skrevet 9. juni 2010 // DERETTER GJØR DU # 1) Lagre denne hashen til databasen # 2) Bruker mail() til å sende en mail til brukerens email, # med en link som ber brukeren om å gå til activate.php?hash=$hash. # Med andre ord -- echo "<a href='activate.php?hash=" . $hash . "'>Trykk her for å aktivere din konto</a>"; -- echo '$to = '$user_mail'; $subject = 'Email verifisering på WeEx.Tk'; $message = 'Blablabla'; $headers = 'From: [email protected]' . "\r\n" . 'Reply-To: [email protected]' . "\r\n" . 'X-Mailer: PHP/' . phpversion(); mail($to, $subject, $message, $headers);'; } SI IFRA HVIS NOE ER FEIL.. Ja, det er forsåvdt riktig! // Dette gjør du #Bruk Warz sin sql kode her, for å oppdatere databasen med hashen. Hvis databasen ble oppdatert, kjører koden under, hvis ikke så send en feilmelding. $to = $user_mail; $subject = 'Email verifisering på WeEx.Tk'; $message = '<a href="www.weex.tk?activate.php?hash=' . $hash . '">Click her for å aktivere kontoen!</a>'; $headers = 'From: [email protected]' . "\r\n" . 'Reply-To: [email protected]' . "\r\n" . 'X-Mailer: PHP/' . phpversion(); if(mail($to, $subject, $message, $headers)) { echo "Du er nå registert! Sjekk emailen din for å aktivere brukeren!"; } else { echo "Kunne ikke sende verfiserings email. Prøv på nytt!"; } EDIT: Du burde sjekke ut Nettuts - How to Implement Email Verfication for New Members Ok, har nå kommet opp med dette og har lagt in activate.php. Men av en eller annen grunn så vil ikke selve siden vises. Den er helt blank. Det må ha noe å gjøre med det som kommer etter mysql query greiene... <?php //signup.php include 'connect.php'; echo '<h3>Registrer deg</h3><br />'; if($_SERVER['REQUEST_METHOD'] != 'POST') { /*the form hasn't been posted yet, display it note that the action="" will cause the form to post to the same page it is on */ echo '<form method="post" action=""> Brukernavn: <input type="text" name="user_name" /><br /> Passord: <input type="password" name="user_pass"><br /> Bekreft Passord: <input type="password" name="user_pass_check"><br /> Email: <input type="email" name="user_email"><br /> <input type="submit" value="Registrer deg" /> </form>'; } else { /* so, the form has been posted, we'll process the data in three steps: 1. Check the data 2. Let the user refill the wrong fields (if necessary) 3. Save the data */ $errors = array(); /* declare the array for later use */ if(isset($_POST['user_name'])) { //the user name exists $userName = $_POST['user_name']; if(strlen($_POST['user_name']) > 30) { $errors[] = 'Viss du har symboler og tegn i navnet ditt som "_" eller "/", osv. Send en mail til meg: [email protected], da legger jeg inn allt manuelt i systemet til vi fikser denne feilen. :-D'; } if(strlen($_POST['user_name']) > 30) { $errors[] = 'Brukernavnet kan ikke inneholde mer enn 30 bokstaver og tall.'; } } else { $errors[] = 'Brukernavn feltet er tomt, DUH!.'; } if(isset($_POST['user_pass'])) { if($_POST['user_pass'] != $_POST['user_pass_check']) { $errors[] = 'Passordene matcher ikke, fiks det!'; } } else { $errors[] = 'Passord feltet kan jo ikke være tomt, er du helt tett i pappen eller?'; } if(!empty($errors)) /*check for an empty array, if there are errors, they're in this array (note the ! operator)*/ { echo 'Uh-oh.. a couple of fields are not filled in correctly..<br /><br />'; echo '<ul>'; foreach($errors as $key => $value) /* walk through the array so all the errors get displayed */ { echo '<li>' . $value . '</li>'; /* this generates a nice error list */ } echo '</ul>'; } else { //the form has been posted without, so save it //notice the use of mysql_real_escape_string, keep everything safe! //also notice the sha1 function which hashes the password $sql = "INSERT INTO users(user_name, user_pass, user_email ,user_date, user_level) VALUES('" . mysql_real_escape_string($_POST['user_name']) . "', '" . sha1($_POST['user_pass']) . "', '" . mysql_real_escape_string($_POST['user_email']) . "', NOW(), 0)"; $result = mysql_query($sql); if(!$result) { //something went wrong, display the error echo 'Something went wrong while registering. Please try again later.'; //echo mysql_error(); //debugging purposes, uncomment when needed } else { $lastID = mysql_insert_id(); // Brukerens ID (Henter siste id som ble satt inn) $hash = sha1($lastID); // Lager en hash $sql = 'UPDATE users SET user_verification = '.$hash.' WHERE id = '.$lastID.''; mysql_query($sql); $to = $user_mail; $subject = 'Registrering på WeEx.Tk'; $message = '<a href="www.weex.tk?activate.php?hash=' . $hash . '">Klick her for å aktivere kontoen!</a>'; $headers = 'From: [email protected]' . "\r\n" . 'Reply-To: [email protected]' . "\r\n" . 'X-Mailer: PHP/' . phpversion(); if(mail($to, $subject, $message, $headers)) { echo 'Du er nå registert! Sjekk emailen din for å aktivere brukeren!'; } else { echo 'Kunne ikke sende verfiserings email. Prøv på nytt!'; } ?> Hvis du vil se på denne siden så er det http://weex.tk/signup2.php Lenke til kommentar
Kaptein Snus Skrevet 10. juni 2010 Del Skrevet 10. juni 2010 (endret) Bytt ut $sql = 'UPDATE users SET user_verification = '.$hash.' WHERE id = '.$lastID.''; med $sql = "UPDATE users SET user_verification = '".$hash."' WHERE id = '".$lastID."'"; Et skudd i mørket, men har hendt at jeg har fått blanke sider på grunn av at det ikke er singleqoutes rundt variabler i sqln Endret 10. juni 2010 av Lek1 Lenke til kommentar
Warz Skrevet 10. juni 2010 Del Skrevet 10. juni 2010 (endret) Så vidt jeg kan se så har du glemt å avslutte elsen.... else { $lastID = mysql_insert_id(); // Brukerens ID (Henter siste id som ble satt inn) $hash = sha1($lastID); // Lager en hash Når det gjelder single quotes i queries så skal ikke det settes rundt nummere. Men jeg pleier å skrive echo $sql; Slik at du ser hva spørringen sier og kan kopiere den og kjøre den via phpMyAdmin for å være sikker på at den funker. Og PS: Hvis du har et litt decent webhotell kan du logge inn på kontroll panelet og lese error loggen. Da vil du finne ut hva som er feil litt lettere (i stedet for en helt blank side!) Endret 10. juni 2010 av Warz Lenke til kommentar
Kaptein Snus Skrevet 10. juni 2010 Del Skrevet 10. juni 2010 Så vidt jeg kan se så har du glemt å avslutte elsen.... else { $lastID = mysql_insert_id(); // Brukerens ID (Henter siste id som ble satt inn) $hash = sha1($lastID); // Lager en hash Sant det, gikk meg hus forbi Lenke til kommentar
NicholasWalker Skrevet 12. juni 2010 Forfatter Del Skrevet 12. juni 2010 Kan noen fikse alle feila for meg og gi meg hele koden, er ikke så god til detta.. Lenke til kommentar
Sk!ppy Skrevet 12. juni 2010 Del Skrevet 12. juni 2010 Nei, vi kan ikke fikse hele koden. Vi er her for å hjelpe deg, ikke for å kode for deg. Jeg synes vi har så og si gitt deg koden nå, og utifra hva vi har gitt deg burde du ha ferdig kode. Lenke til kommentar
NicholasWalker Skrevet 12. juni 2010 Forfatter Del Skrevet 12. juni 2010 Nei, vi kan ikke fikse hele koden. Vi er her for å hjelpe deg, ikke for å kode for deg. Jeg synes vi har så og si gitt deg koden nå, og utifra hva vi har gitt deg burde du ha ferdig kode. Folk driver og lager brukere for kødd og jeg må gå inn og slette dem hele tiden, kan dere ikke bar hjelpe meg med denne? Lenke til kommentar
Sk!ppy Skrevet 12. juni 2010 Del Skrevet 12. juni 2010 Nei, vi kan ikke "bare hjelpe deg med denne". Du har flere poster, og du må nesten lære å kode php om du på egenhånd skal drifte et system. Lenke til kommentar
NicholasWalker Skrevet 13. juni 2010 Forfatter Del Skrevet 13. juni 2010 Hvorfor kan dere ikke bare "Hjelpe meg med denne"? Dette er jo et php forum der dere hjelper folk som trenger hjelp... Lenke til kommentar
Sk!ppy Skrevet 13. juni 2010 Del Skrevet 13. juni 2010 Ja, det er nøyaktig det vi har gjort, om du faktisk leser postene så har vi så godt som gitt deg svarene. Alt du trenger er å kopiere koden vi har gitt, lage en rad i databasen og tilpasse ditt system. Lenke til kommentar
MikkelRev Skrevet 13. juni 2010 Del Skrevet 13. juni 2010 Det er forskjell på å hjelpe noen og å gjøre det for noen. Tror ikke læreren din pleier å gjøre leksene for deg heller. Lenke til kommentar
NicholasWalker Skrevet 13. juni 2010 Forfatter Del Skrevet 13. juni 2010 Det er forskjell på å hjelpe noen og å gjøre det for noen. Tror ikke læreren din pleier å gjøre leksene for deg heller. Nei, men hvordan skal jeg lære noe når jeg ikke kan ha siden oppe fordi folk kødder med registreringa, dette er det eneste jeg trenger å få gjort akuratt nå, jeg reiser til thailand i 3 uker imårra og når jeg kommer hjem igjen vil sia være proppfull av kødde brukere fordi jeg ikke har fått email systemet eller at jeg ikke kan slette dem... Lenke til kommentar
Sk!ppy Skrevet 13. juni 2010 Del Skrevet 13. juni 2010 Da foreslår jeg at du faktisk bruker koden vi har gitt deg, eller stenger siden mens du drar til thailand. Det er faktisk ikke vårt problem at din side blir proppfull av køddebrukere. Lenke til kommentar
greygenic Skrevet 13. juni 2010 Del Skrevet 13. juni 2010 WeExClan, du er lat (til og med latere enn meg). Igår sendte jeg en PM til deg, og sa meg villig til å hjelpe deg om du sendte over alle de nødvendige filene, men det gadd du visst ikke? Lenke til kommentar
Sk!ppy Skrevet 13. juni 2010 Del Skrevet 13. juni 2010 Jeg kan gjøre alt for deg, for en timepris på 500 kr. Pr påbegynte time. Lenke til kommentar
ilpostino Skrevet 14. juni 2010 Del Skrevet 14. juni 2010 Hvorfor kan dere ikke bare "Hjelpe meg med denne"? Dette er jo et php forum der dere hjelper folk som trenger hjelp... såvidt jeg kan se har du fått hjelp og tipps i tråden allerede. i alle mine år på forumet har jeg nesten aldri sett noen skrive ferdig koden gratis for noen andre så det må du nesten gjøre selv. Lenke til kommentar
Kaptein Snus Skrevet 16. juni 2010 Del Skrevet 16. juni 2010 Koden er egentlig ferdig, du må bare lese igjennom postene og klippe og lime.. Hvis du leser godt nok, skjønner du hva som skal hvor. Lenke til kommentar
Anbefalte innlegg
Opprett en konto eller logg inn for å kommentere
Du må være et medlem for å kunne skrive en kommentar
Opprett konto
Det er enkelt å melde seg inn for å starte en ny konto!
Start en kontoLogg inn
Har du allerede en konto? Logg inn her.
Logg inn nå