Weboldalon bejelentkezés facebookkal?
Nem bonyorult össze tenni 1 Reg/Login rendszert.
Kell adatbázis, felhasználói felület, és egy kis programkód. Most, hogy hogyan nézki a beviteli űrlap, az most mind1. Ott koztem, hogy POST-ban jön az adat.
Nos Regisztráció recept. Most nem bonyolítjuk olyannal, hogy email ellenőrző meg társai.
1.: Megjönnek az alap adatok. $_POST['email'] és $_POST['password'] változókban. Ezekkel kellene valamit csinálni.
2.: Megnézed, hogy mind2 helyesen lett-e kitöltbe. erre jó a empty() függvény vagy inkább a prag_match() reguláris kifejezős téma. Az utóbbi azért jó, mert ha email-t ellenőrzől, akkor megnézi hogy a minta jó-e a kapott értékre. (Az üres és a hülyeség se passzol.)
3.: Ha mindent jónak találtál, akkor mehet a feltöltés.
mysqli_query("INSERT INTO `user` (`email`, `passwd`) VALUES ('$email', '$passwd')");
Jelszót érdemes titkosítani sha1() függvénnyel, amivel 40 karakteres össze visszaságot kapsz
Login:
Bekéred az email-t passwd-t majd, az adatbázisból lekéred az email alapján szűrt listából azt az 1-et. "SELECT `passwd` FROM `user` WHERE `email` = '$email'". Azért csak a passwd kell, mert jelszó összehasonlítás miatt kell csak a jelszó. Nos ha megvan az adott adat akkor egy If oszt csoki. Ha jó akkor $_SESSION['login'] = TRUE.
Kész is.
De ezt lehet kavarni pl.: $_SESSION['uid'] (uid = User ID) -val oldod meg. Ha 0 akkor nincs loginolva, de ha valamilyen ID-t kap, akkor azzal az userrel van beloggolva. De innentől 1000+1 megoldás van. Én pl. csináltam olyat, hogy user nevet és email-t is megadhatsz loginkor és az alapján szűr.
Volt olyan ötletem is, hogy pl. másik netről és gépről nem enged belépni, mert feltörés veszélye miatt egy emailt küldött, ahol engedélyeztetni kellet. :)
A facebook login betenni bonyolultabb, mint egyet írni, hidd el.
Ha ez nem meg, akkor az sem fog.
De amúgy ez alapján meg lehet csinálni: [link]
#3 kaptam egy ilyen hibakódot:
Parse error: syntax error, unexpected T_DNUMBER in /home/a7102129/public_html/check.php on line 7
mi lehet az oka ?
annak a fájlnak ez van a 7. sorában :
$kapcsolat = mysql_connect(’mysql5.000webhost.com’, ’ a7102129_asd’, ’xyz’);
Heyhó!
Köszönök, mert senki sem szokott...
Az 5. posztra a válasz:
a hibakódban benne van, hogy mi a baja. Méghozzá szintaktikai hiba, ugyanis Te ezt írtad:
$kapcsolat = mysql_connect(’mysql5.000webhost.com’, ’ a7102129_asd’, ’xyz’);
Holott, a sql_connect() funkcióban ’jelek ’ helyett 'aposztrófot' vagy "idézőjelet" kell használni, ellenben ezt a hibát kapod!
És akkor jöjjön egy CTRL+C - CTRL-V kód számodra, hogy én hogyan csinálnám:
$host = "mysql5.000webhost.com";
$user = "a7102129";
$pass = "xyz";
$db = "adatbázisod neve";
$kapcsolat = mysql_connect($host,$user,$pass)or die(mysql_error());
és kifejtve: Először letárolom egy változóban az adatokat, majd azokat a változókat beillesztem a connect() funkció adott pontjára.
Rem segítettem.
Kapcsolódó kérdések:
Minden jog fenntartva © 2024, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!