PHP Aktivacio kod
Sziasztok!
Van egy PHP szkript amely segitsegevel egy felhasznalo regisztralja magat egy adatbazisba.
Regisztracio utan a felhasznalo kap egy e-mailt, egy link-el. Csak akkor lesz aktiv a felhasznalo ha meglatogatja ezt a linket.
Ez a link tartalmaz egy random generalt kodot :
Pl:
Ez a hosszu kod bent van egy mySQL mezoben, amelynek a neve "validate".
Amiutan a felhasznalo meglatogatja a linket a hosszu kod helyet egy 0 lesz beirva a validate mezobe.
A gond az, hogy eleg ha csak a kod egyik kissebb reszet irom be, mert kiirja, hogy a regisztracio sikeresen tortent:
Pl.
Persze o kiirja de nem fog atvaltani 0-ra !
Itt van a userval.php kodja:
$key = $_GET['key'];
if (@mysql_query("UPDATE register SET validate='0' WHERE validate='". $_GET['key'] . "'")) {
print "<b>Aktivalodott<br />";
} else {
print "<b>Nem aktivalodott</b>";
}
Mielott megjelenik az "Aktivalodott" sor le kene elenorizem ha tenyleg atirta azt az erteket 0-ra.
Sajnos nem tudom milyen parancsokkal vegezem el ezt az elenorzest. Ha tudtok segiteni, nagyon halas lennek !
Koszonom !
■ Van egy PHP szkript amely segitsegevel egy felhasznalo regisztralja magat egy adatbazisba.
Regisztracio utan a felhasznalo kap egy e-mailt, egy link-el. Csak akkor lesz aktiv a felhasznalo ha meglatogatja ezt a linket.
Ez a link tartalmaz egy random generalt kodot :
Pl:
www.mydomain.com/userval.php?key=b026a66879c2690575bc7e3c56edc60e353d8d06
Ez a hosszu kod bent van egy mySQL mezoben, amelynek a neve "validate".
Amiutan a felhasznalo meglatogatja a linket a hosszu kod helyet egy 0 lesz beirva a validate mezobe.
A gond az, hogy eleg ha csak a kod egyik kissebb reszet irom be, mert kiirja, hogy a regisztracio sikeresen tortent:
Pl.
www.mydomain.com/userval.php?key=b026a66879
Persze o kiirja de nem fog atvaltani 0-ra !
Itt van a userval.php kodja:
$key = $_GET['key'];
if (@mysql_query("UPDATE register SET validate='0' WHERE validate='". $_GET['key'] . "'")) {
print "<b>Aktivalodott<br />";
} else {
print "<b>Nem aktivalodott</b>";
}
Mielott megjelenik az "Aktivalodott" sor le kene elenorizem ha tenyleg atirta azt az erteket 0-ra.
Sajnos nem tudom milyen parancsokkal vegezem el ezt az elenorzest. Ha tudtok segiteni, nagyon halas lennek !
Koszonom !
talán így
A mysql_query() hiba esetén tér vissza False-szal, azaz ha a query jó, de nincs egyetlen egy érintett sor sem, akkor sem ad vissza False-t.
nem mukodik
if (mysql_query("SELECT * FROM register WHERE validate='". $_GET['key'] . "'")) {
mysql_query("UPDATE register SET validate='0' WHERE validate='". $_GET['key'] . "'");
print "<b>Aktivalva<br />";
} else {
print "<b>Nincs aktivalva</b>";
}
Szuksegem lenne elege surgosen segitsegre, ha barmilyen otletek van jol jonne
Több hiba is akad
Remélem, nem éles rendszert fejlesztes, hanem magadnak barkácsolsz otthon. ,)
Koszonom
A kovetkezo kodot hasznalom:
Kosznom !
mysql_real_escape_string()?
koszonom !
Az sprintf biztonsagosabb lekerest ad mint a query?
sokkal
RTFM!