Hej Udviklere.
Jeg sidder og leger lidt med aktivere bruger konto.
Men jeg er lidt lost.
I mailen ser det sådan her ud:
lik på linket for at aktiveret din brugerkonto -- <a href=\"http://link/Aktivere&uniklink=$uniklink\">Aktivere brugerkonto</a>
Men i Aktivere konto, er jeg lidt forvirret over hvordan jeg henter informationer udfra den unikke kodelink.
Den unikkelink sættes med:
- $codelenght = 10;
-
- while(strlen($uniklink) < $codelenght) {
- $part = rand(1,3);
- if($part==1){$a=48;$b=57;}
- if($part==2){$a=65;$b=90;}
- if($part==3){$a=97;$b=122;}
- $uniklink .= chr(rand($a,$b));
I Aktivere skal jeg jo hente info omkring den unikke kode og brugernavn + om den er aktiveret.
- $sql = mysql_query("SELECT * FROM `brugere_ansoegninger` WHERE WHERE `uniklink`='$_GET[uniklink]'");
- $tjekstatus = mysql_num_rows($sql);
- echo ("Brugerkontoen er aktiveret $tjekstatus[brugernavn]");
Jeg skal have den til at tjekke om:
Den unikke kode er korrekt som er sat i SQL til den pågældende konto.
Den skal skrive brugernavn på den brugerkonto som er aktiveret/eller forsøges at dobbelt aktivere.
Den skal tjekke om den allerede er aktiveret, hvis ja, udskriv tekst om at denne konto er aktiveret. Og afslutter handlingen.
I SQL ser det således ud.
uniklink ( 7RLJ82n9RK )
status = 0 ikke aktiveret.
status = 1 aktiveret.
Nogen der kan hjælpe?.RettelserHar prøvet dette stykke kode.
- <?php
- $hentindhold = mysql_query("SELECT * FROM `brugere_ansoegninger` WHERE `uniklink`='$_GET[uniklink]'");
- if ( ! mysql_num_rows ( $hentindhold ) ) { echo (""); }
- while ($visindhold = mysql_fetch_array($hentindhold)) {
- echo ("Brugerkontoen er aktiveret $visindhold[brugernavn]");
- }
- ?>
Nu udskriver den følgende:
Aktiver bruger konto
Brugerkontoen er aktiveret test123
Udfra link: Aktivere&uniklink=7RLJ82n9RK
Og i det link med uniklink ( 7RLJ82n9RK ) - passer den til brugernavnet test123.
Virker hvis nu.
Kan det gøres på andre måder eller?.
Og mere sikret?
Indlæg senest redigeret d. 08.06.2012 23:31 af Bruger #17118