|
Serverske aplikacije i baze podataka PHP, Perl, ASP, ASP .NET, ColdFusion... MySQL, PostgreSQL, MSQL, Oracle... |
|
Alatke vezane za temu | Vrste prikaza |
8.3.2010, 0:44 | #1 |
Član
Član od: 9.12.2007.
Poruke: 150
Zahvalnice: 20
Zahvaljeno 3 puta na 3 poruka
|
Activaction mail
Postovanje svima. Npravio sam neku jednostavnu formu za rekistraciju, skolski primer, nista posebno.E sad hocu da na e mail, koji korisnik upise, stize aktivacijski mail koji on klikne, potvrdi registraciju i naravno taj link time prestane da bude validan. Ima neko ideju kako to da se odradi. Pozdrav
Kod:
<?php // konekcija na bazu mysql_connect("localhost", "root", "") or die(mysql_error()); mysql_select_db("prijavaispita") or die(mysql_error()); //Provjeravamo da li je korisnik pritisnuo submmit if (isset($_POST['submit'])) { //Provjera da li je korisnik popunio polja if (!$_POST['ime'] | !$_POST['prezime'] |!$_POST['password']|!$_POST['brindeksa']) { die('Niste popunili sva polja'); } if (!get_magic_quotes_gpc()) { $_POST['brindeksa'] = addslashes($_POST['brindeksa']); } //select za provjeru indeksa $usercheck = $_POST['brindeksa']; $check = mysql_query("SELECT brojindeksa FROM studenti WHERE brojindeksa = '$usercheck'") or die("Provjera ne moze da se izvrsi"); $check2 = mysql_num_rows($check); //select za provjeru email-a $usercheck = $_POST['email']; $pemail = mysql_query (" SELECT * FROM studenti WHERE email ='$email' ") or die ("Provjera ne moze da se izvrsi"); $check3 = mysql_num_rows($pemail); //Ako broj indeksa postoji u bazi ispisujemo gresku if ($check2 != 0) { die('Greska, brojindeksa koji ste unijeli '.$_POST['brindeksa'].' je u upotrebi.'); } //Provjera da li je unijeta e-mail adresa ispravna if (!eregi('^[a-zA-Z0-9_\-\.]+@[a-zA-Z0-9\-]+\.[a-zA-Z0-9\-\.]', $_POST['email'])) { echo 'Unijeta email adresa nije ispravna'; exit; } //Provjeravamo da li email vec postoji u bazi if ($check3 !=0) { die ('Greska, Email koji ste unijeli '.$_POST['email'].' je u upotrebi'); } // Vrsimo kriptovanje sifre md5 algoritmom $_POST['password'] = md5($_POST['password']); if (!get_magic_quotes_gpc()) { $_POST['password'] = addslashes($_POST['password']); } //Sigurnosno upisivanje u bazu $datumprijave=date("Y-m-d"); $ime=$_POST['ime']; $prezime=$_POST['prezime']; $brindeksa=$_POST['brindeksa']; $password=$_POST['password']; $email=$_POST['email']; $password=mysql_real_escape_string($password); $insert = "INSERT INTO studenti (imestudenta,prezimestudenta,brojindeksa,password,email,datumprijave) VALUES ('".$ime."','".$prezime."','".$brindeksa."','".$password."','".$email."','".$datumprijave."')"; $add_member = mysql_query($insert); //Upisujemo podatke u bazu //$insert = "INSERT INTO users (username, password) //VALUES ('".$_POST['username']."', '".$_POST['pass']."')"; //$add_member = mysql_query($insert); // Make a safe SQL //$user = check_input($_POST['user']); //$pwd = check_input($_POST['pwd']); //$sql = "SELECT * FROM users WHERE //user=$user AND password=$pwd"; ?> <h1>Uspjesno ste se registrovali</h1> <p>Hvala Vam na registraciji.Sada mozete da se logujete</a>.</p> <?php } else { ?> <form action="add.php" method="post"> <table border="0"> <tr><td>Ime:*</td><td> <input type="text" name="ime" maxlength="35"> </td></tr> <tr><td>Prezime:*</td><td> <input type="text" name="prezime" maxlength="35"> </td></tr> <tr><td>Broj indeksa:*</td><td> <input type="text" name="brindeksa" maxlength="4"> </td></tr> <tr><td>Sifra:*</td><td> <input type="password" name="password" maxlength="12"> </td></tr> <tr><td>eMail:</td><td> <input type="text" name="email" maxlength="35"> </td></tr> <tr><th colspan=2><input type="submit" name="submit" value="Registracija"></th></tr> <tr><th colspan=2><input type="reset" name="reset" value="Resetovanje"></tr></td></table> </form> <?php } ?> |
8.3.2010, 1:33 | #2 |
Član
Član od: 20.3.2007.
Poruke: 283
Zahvalnice: 43
Zahvaljeno 60 puta na 48 poruka
|
Re: Activaction mail
Možda ti ovo može pomoći:
http://www.learnphponline.com/script...-for-php-forms http://www.tutorialcode.com/php/registration-script/ |
8.3.2010, 1:38 | #3 |
Član
Član od: 9.12.2007.
Poruke: 150
Zahvalnice: 20
Zahvaljeno 3 puta na 3 poruka
|
Re: Activaction mail
Pogledacu pa javljam sta sam uradio. Hvala puno!
|
9.3.2010, 17:27 | #4 |
Član
Član od: 9.12.2007.
Poruke: 150
Zahvalnice: 20
Zahvaljeno 3 puta na 3 poruka
|
Re: Activaction mail
E ovako. Zbunio sam se ovim mnogo. Mene zanima kako ovo ovde radi? Znaci sta e desava posle toga kada korisnik klikne na aktivacioni link i kako skripta zakljuci da je on to uradio stvarno mi nije jasno. Vidim da uporedjuje da li su activactionkey isti i na osnovu toga izvrsi izmene u tabeli tj polje status iz verifi prebaci u activated. Po meni ovde fali dosta jos toga. Kao prvo ne vidim nigde deo gde se korisnik loguje, kao drugo ne vidm deo gde se proverava da li korisnik uopste registrovan i ako nije da mi zabrani da se loguje itd.
Tacnije ovo ovde ne mogu da protumacim: Kod:
$queryString = $_SERVER['QUERY_STRING']; $query = "SELECT * FROM users"; $result = mysql_query($query) or die(mysql_error()); while($row = mysql_fetch_array($result)){ if ($queryString == $row["activationkey"]){ echo "Congratulations!" . $row["username"] . " is now the proud new owner of an YOURWEBSITE.com account."; $sql="UPDATE users SET activationkey = '', status='activated' WHERE (id = $row[id])"; if (!mysql_query($sql)) { die('Error: ' . mysql_error()); } } } } |
Bookmarks sajtovi |
Alatke vezane za temu | |
Vrste prikaza | |
|
|
Slične teme | ||||
tema | temu započeo | forum | Odgovora | Poslednja poruka |
Beobug mail | Electro | Internet usluge | 1 | 24.2.2010 12:31 |
Mail delivery failed permanently :@ | RaKuN_s_NeOnKoM | Internet tehnologije | 1 | 22.2.2010 12:23 |
Migracija s Thunderbirda na Windows Mail | Vladimiros | Aplikativni softver | 1 | 29.10.2008 2:05 |
opera mail | JovanK | Aplikativni softver | 6 | 10.2.2007 22:26 |
kako da posaljem mail na svoj tel? | Vorador | Aparati i oprema | 10 | 24.1.2006 21:12 |