Ajax engedély és a bejegyzés php

Adatbázis létrehozása

Új adatbázis létrehozása nevű TESZTAB. futás a következő lekérdezést kiváltságos felhasználó.

Együttműködik az adatbázis, adjunk hozzá egy felhasználó TESZTAB, és neki a szükséges jogokat.

A szerkezet a felhasználók tábla

Tárolni a felhasználói adatbázis létrehozásához felhasználók tábla adatait. futás a következő lekérdezést.

  • id - egyedi felhasználói azonosító
  • felhasználónév - bejelentkezés
  • jelszó - titkosított jelszó
  • só - só jelszó titkosítás

A szerkezet a fájlok és könyvtárak

Hozzon létre egy könyvtárat «php-auth» a projektünk. Ezenkívül az alábbi fájlok és mappák:

felhasználói regisztráció

A regisztráció során a felhasználónak kell adni egy felhasználónevet és jelszót, erősítse meg a jelszót. Az űrlap elküldése után fogjuk tenni meglétének ellenőrzése a megadott bejelentkezési. Ha a belépés már létezik - értesíti a látogató.

Ajax engedély és a bejegyzés php

Minden munka az adatbázis fog bekövetkezni a PDO PHP kiterjesztés. Ez benne van a standard PHP könyvtár verzió óta 5.1.

Az alapvető logikája a kérelem az osztályok / Auth.class.php fájlt. Nézzük részletesen a tartalmát.

regisztráció algoritmus

Ahhoz, hogy hozzon létre egy új felhasználói módszerével Felhasználó :: create (). amely befogadja a bejelentkezési név és jelszó paraméterként.

Az első dolog, hogy ellenőrizze a felhasználó létezéséről. Ehhez használja Felhasználó :: getSalt () metódust. amely kiválasztja az alapja a „só” a felhasználó bejelentkezési. A só szükséges, hogy bonyolítja a kiválasztási felhasználói jelszavak szivárgás esetén bázis.

Ha a felhasználó létezik - dobni egy kivételt. Ellenkező esetben, létrehoz egy új só és a hash a jelszót is. Ezt követően a kérést, hogy az adatokat az adatbázisba. Ha a lekérdezés sikertelen, sootvetstvuyuee üzenetet küld, és lépjen ki a forgatókönyvet. Ilyen helyzet akkor fordulhat elő, ha kihúzza a MySQL-szerver vagy egy belső hiba.

Ha egy felhasználó létrejött ussheshno, Használati :: create () függvény az egyedi azonosítót. Ez egy normális numerikus mező, amely automatikusan megemelkedik, amikor hozzá rekordokat a táblázatban.

hitelesítési algoritmussal

Annak érdekében, hogy ellenőrizze a helyes bejelentkezési név és jelszó a Felhasználó :: engedélyezik () metódust. Az első dolog, amit ellenőrizni, hogy létezik egy felhasználó próbál választani a sót a bázis. Ha a felhasználó nem található, azonnal visszatér hamis. Ellenkező esetben, hash a jelszó a só áthaladt a Felhasználó :: passwordHash () függvényt. Aztán, hogy a kiválasztás az adatbázisban felhasználónevét és jelszavát hash.

Ha a lekérdezés eredménye üres volt, a felhasználónév és jelszó helyes. Mentse polzotelskie adatokat a Felhasználói osztály objektum. Írja be a felhasználói azonosító az ülésen keresztül Felhasználó :: saveSession () metódust. Ha az első argumentum - $ emlékezni. át hű hozzá. A munkamenet azonosító mentett cookie-kat. Ez nem fog belépni a jelszót minden egyes alkalommal újra a böngészőt.

Az űrlapok segítségével Ajax

Kezelhető Ajax-kérések létre AjaxRequest osztályban. Mentse el az osztályok / AjaxRequest.class.php fájlt.

Ez az osztály fogja könnyíteni a feldolgozás küldött adatok a felhasználó formában. A tervező, aki megkapja kérelem adatait array ($ _GET vagy $ _POST).

getRequestParam () módszerre van szükség származtatására paramétert a kérést. Azt teszi, további ellenőrzést a létezését egy sor gomb és vissza null. ha a kérelem nem tartalmazza a releváns adatokat.

setResponse () funkció használható, hogy létrehoz egy választ. setFieldError () metódus szükséges átviteli hiba üzenet formájában területen.

Hogy visszatérjen a válasz, hogy a felhasználó az általunk használt showResponse módszer. Ez létrehoz egy sor JSON formátumú, beállítja a kívánt HTTP-fejléceket, és visszaadja az adatokat az ügyfélnek.

A ajax.php fájlban történhet közvetlenül a lekérdezés feldolgozása AjaxRequest osztályban.

Format JSON-válasz

A kliens oldalon, akkor képesnek kell lennie arra, hogy bemutassák a művelet eredménye egy ember által olvasható formában. Ehhez térjünk vissza JSON-válasz a következő formában:

Hozza létre a fájlt js / ajax-form.js. Ő küld az esemény elfogására minden formáját AJAX osztály és küldjön egy aszinkron kérést a szerver. A forráskód ajax-form.js.

A forgatókönyvet kell jQuery 2.0.3 (az archívumban a forrás).

Ezek visszahívások hivatkoztak csak akkor, ha az érvényesítés válasz sikeres. script.ajaxForm.validate eljárás ellenőrzi a válasz a mező nevét egy hiba. Ha egy ilyen mező létezik, podstvechivaet, és megjelenik a szöveg a hiba.

Ajax engedély és a bejegyzés php

UPDATE: Javított hibák kapcsolatos kivonatolt jelszót, rendes körülmények között elért funkció „Emlékezz rám”. Köszönöm a felhasználó santas156 hibákat találtak.

Értékelés - 4.9 Szavazatok - 27

Kapcsolódó cikkek