Website Brukerregistrering i PHP

1. For å lagre brukernavn og passord vi vil bruke MySQL
database.
Du må opprette en ny database og tabell. Hvis du ikke er kjent med dette kan du lese leksjonen
oppretter MySQL database med phpMyAdmin
I phpMyAdmin kjøre følgende SQL som vil opprette en ny tabell brukere
.
CREATE TABLE brukere (
`id` INT NOT NULL AUTO_INCREMENT PRIMARY KEY, etter` username` TEKST NOT NULL, etter `password` TEKST NOT NULL
) MOTOR = InnoDB;

2. Vi vil også bruke phpMyAdmin
å angi noen registrerte brukere.
kategorien
Klikk Sett Hotell og legge inn data om brukere. Anmeldelser
For id
du kan bruke verdien 0. Fordi når du oppretter tabellen har vi brukt Autoincrement
, denne verdien vil bli automatisk økes.
3. Når du oppgi passord bør du også velge SHA1
funksjonen til venstre for å kode passordet.
Vi gjør dette av sikkerhetsmessige grunner fordi lagring av et passord i klartekst i en database er alltid en dårlig idé.

4. Hvis du har lagt inn dataene korrekt bør du nå se dataene i tabellen.
5. Vi vil nå opprette en PHP side med et skjema for å legge inn brukerdata og kode for å håndtere brukerregistrering.
6. På toppen av dokumentet du bør begynne med PHP-funksjonen
session_start (); største nettstedene Vi gjør dette for å tillate lagring av bruker variabler på serveren. Mer om bruk av $ _SESSSION variabelen kan leses i
Hvordan bruke $ _SESSION variabel i PHP
Neste vi lage en forbindelse til databasen hvor vi går inn korrekte data for server, brukernavn, passord og databasenavn.
$ db = mysqli_connect ("localhost", "root", "", "dev");
7. Vi må også bekrefte om det var en form legges. Hvis det er tilfelle vil vi bekrefte brukernavn og passord.
Av sikkerhetsmessige grunner har vi også bruke funksjonen mysqli_real_escape_string
som fjerner spesialtegn som kan påvirke SQL henrettelse.
If ( isset ($ _ POST ['brukernavn'])) {product: $ username = mysqli_real_escape_string ($ db, $ _ POST ['brukernavn']);
$ password = sha1 (mysqli_real_escape_string ($ db, $ _ POST ['passord'])); product: $ sql = "select * from brukere der brukernavn = '$ brukernavn'";
$ resultat = $ DB > spørring ($ sql);
if (rad $ = $ resultat- > fetch_assoc ()) {
if ($ row ['passord'] == $ passord) $ _SESSION ['auth'] = true;
}
}
Hvis brukernavnet og data er det samme som i vår database vil vi sette $ _SESSSION ['auth'] variabel. På denne måten vil vi vite om brukeren er registrert eller ikke.
8. Neste vi legger også støtte for å logge av.
If (isset ($ _ GET ['avlogging'] )) {
unset ($ _ SESSION ['auth'], $ auth);
}
I dette tilfellet hvis variabelen avlogging er satt vi vil fjerne $ _SESSSION ['auth'] variabel som betyr brukeren er ikke lenger registrert.
9. Nå må vi lage skjema for å legge inn brukerdata.
Vi først sjekke om variabelen $ _SESSSION ['auth'] er satt, og showet skjemaet bare hvis brukeren ikke er autentisert
. <?! php
if (isset ($ _ SESSION ['auth'])) {>?
< form method = "post" action = "index.php" >
< p >
< label for = "brukernavn" > < /label > Brukernavn:
< input type = "text" name = "brukernavn" id = "brukernavn" />
< /p >
< p >
< label for = " passord "> < /label > Passord:
< input type = "text" name = "password" id = "passord" />
< /p > < p >
< input type = "submit" name = "Logg inn" id = "Logg inn" value = "Send" />
< /p >
< /skjema >
<? php} >

10. På slutten av dokumentet vi legge til en tekst som vil bli vist til registrerte brukere bare
. <? php
if (isset ($ _ SESSION ['auth'])) {>?
Logget inn ...
< br />
< a href = "index.php avlogging = 1?" > Logg av < /a > < .no> <? php} >?
11. Dersom vi nå åpner skjemaet og legge inn riktig brukerdata vil vi være i stand til å se teksten for den registrerte brukere.
Hvis du klikker på linken Logg av
vil du igjen være uautorisert. Kode for håndtering av dette er beskrevet i trinn 8.
Komplett PHP-kode
fra denne leksjonen finner du på http://dreevoo.com/download/login.zip

For ytterligere spørsmål kan du spørre på forumet.
<