Hvordan skrive en PHP Script Pålogging

Med bruk av en MySQL database, kan du skrive et script med PHP: Hypertext Preprocessor, bedre kjent som bare PHP språk, for å tillate brukere å logge inn på nettstedet ditt. Personer med rett legitimasjon vil ha tilgang til innhold som den gjennomsnittlige brukeren ikke kan se. Dette PHP script krever ikke at du å laste ned og installere komplekse innhold styresystemer til serveren din.

Bruksanvisning

Lag tabeller

1 Logg inn for å PHPMyAdmin (eller en annen MySQL database kontrollpanel) via nettstedet kontrollsenteret til å opprette en database tabell for brukerinformasjonen. Klikk på navnet på databasen du vil bruke, og velg "SQL" -kategorien.

2 Kopier og lim følgende inn i tekstfeltet ved å merke teksten, trykke "Ctrl" + "C" for å kopiere og skrive "Ctrl" + "V" for å lime inn i boksen.

CREATE TABLE members (
id int (4) NOT NULL AUTO_INCREMENT,
username varchar (65) NOT NULL standard '',
password varchar (65) NOT NULL standard '',
PRIMARY KEY ( id )
) TYPE = MyISAM AUTO_INCREMENT = 2;

-
- Dumping data for table members
-

INSERT INTO members VALUES (1, 'john', '1234');

3 Trykk "Gå" for å kjøre SQL-spørringen. Dette skaper en tabell som skal huse bruker-ID, brukernavn og passord. Spørringen instruerer bordet for å lage en testbruker med ID "en," brukernavn "john" og passord "1234."

4 Legg til flere brukere i databasen ved hjelp av den samme spørresyntaks som før:

INSERT INTO members VALUES (1, 'john', '1234');

Endre verdiene for brukernavn og passord til ønsket legitimasjon. Endre verdien for ID så det øker ett siffer over den forrige ID.

5 Trykk på "Go" å kjøre spørringen og legge til brukere i databasen.

Opprett Sider

6 Åpne en tekst eller HTML-editor som Notisblokk til å opprette påloggings nettside. Du kan redigere en eksisterende side fra nettstedet ditt. Velg "File" og "Open" for å finne en eksisterende fil, eller velg "Fil" og "New" for å starte med en helt ny side. Hvis du starter med en ny side, må du ta med åpning og lukking html, tittel, hode og kropp koder for det til å fungere skikkelig.

7 Lim inn følgende mark opp i området der du vil loggen i boksen for å vise:

<Table width = "300" border = "0" align = "center" cellpadding = "0" cellspacing = "1" bgcolor = "# CCCCCC">
<Tr>
<Form name = "Form1" method = "post" action = "checklogin.php">
<Td>
<Table width = "100%" border = "0" cellpadding = "3" cellspacing = "1" bgcolor = "# FFFFFF">
<Tr>
<Td colspan = "3"> <strong> Medlem Logg </ strong> </ td>
</ Tr>
<Tr>
<Td width = "78"> brukernavn </ td>
<Td width = "6">: </ td>
<Td width = "294"> <input name = "mittbrukernavn" type = "text" id = "mittbrukernavn"> </ td>
</ Tr>
<Tr>
<Td> Passord </ td>
<Td> </ td>
<Td> <input name = "mittpassord" type = "text" id = "mittpassord"> </ td>
</ Tr>
<Tr>
<Td> </ td>
<Td> </ td>
<Td> <input type = "submit" name = "submit" value = "Logg inn"> </ td>
</ Tr>
</ Table>
</ Td>
</ Form>
</ Tr>
</ Table>

8 Velg "Fil" og "Lagre" for å lagre nettsiden din. Skriv "main_login.php" inn i dialogen. Pass på at "All File" eller "Alle filtyper" er aktiv i rullegardinmenyen. Du kan lukke denne filen.

9 Opprett en ny fil ved å velge "Fil" og "New". Lim inn følgende i en teksteditor.

<? Php
$ Host = "localhost"; // Vertsnavn
$ Username = ""; // Mysql brukernavn
$ Password = ""; // Mysql passord
$ Db_name = "test"; // Databasenavn
$ Tbl_name = "medlemmer"; // Tabell navn

// Koble til serveren og velger vår database.
mysql_connect ( "$ host", "$ username", "$ password") or die ( "kan ikke koble");
mysql_select_db ( "$ db_name") or die ( "kan ikke velge DB");

// Brukernavn og passord som sendes fra skjemaet
$ Mittbrukernavn = $ _ POST [ 'mittbrukernavn'];
$ Mittpassord = $ _ POST [ 'mittpassord'];

// For å beskytte MySQL injeksjon (mer detalj om MySQL injeksjon)
$ Mittbrukernavn = stripslashes ($ mittbrukernavn);
$ Mittpassord = stripslashes ($ mittpassord);
$ Mittbrukernavn = mysql_real_escape_string ($ mittbrukernavn);
$ Mittpassord = mysql_real_escape_string ($ mittpassord);

$ Sql ​​= "SELECT * FROM $ tbl_name WHERE brukernavn = '$ mittbrukernavn" og passord =' ​​$ mittpassord ' ";
$ Resultat = mysql_query ($ sql);

// Mysql_num_row teller tabellen rad
$ Teller = mysql_num_rows ($ resultat);
// Hvis resultatet matchet $ mittbrukernavn og $ mittpassord, må tabellrad være en rad

if ($ count == 1) {
// Register $ mittbrukernavn, $ mittpassord og omdirigere til fil "login_success.php"
session_register ( «mittbrukernavn");
session_register ( «mittpassord");
header ( "location: login_success.php");
}
else {
echo "Feil brukernavn eller passord";
}
?>

10 Endre verdiene for $ host, $, brukernavn, $ passord, $ db_name og $ tbl_name til database legitimasjon for å tillate at skript for å fungere. Mange MySQL-databaser bruke locaton "localhost", som er gitt i dette skriptet. Skriv inn database brukernavn, passord, databasenavn og tabellnavn mellom anførselstegn, henholdsvis.

Lagre filen som "checklogin.php" og lukke den.

Last opp Sider

11 Naviger til ditt kontrollpanel i nettleseren eller åpne en FTP (File Transfer Protocol) klient som FileZilla på datamaskinen. Skriv inn ditt brukernavn, passord og FTP-server (hvis aktuelt) i de aktuelle feltene. Klikk på "Logg inn" eller "Connect".

12 Velg opplastingsverktøyet i filbehandling på kontrollpanelet for å finne de tre PHP-filer. Velg filene (trykk "Ctrl" mens du klikker for å velge flere filer hvis du kan, ellers gjenta dette trinnet for alle filer) og trykk "OK" for å laste opp filer. Naviger til mappen som inneholder filene i "Local" ruten din FTP-klient og klikke og dra filene inn i "Remote" (site) ruten å laste dem opp.

1. 3 Skriv inn URL til «main_login.php" for å teste manuset. Adressen vil ligne på "http://yourdomain.com/main_login.php." Skriv inn brukernavn "john" og passordet "1234" hvis du la dem inn i databasen tabellen. Ellers angi et annet brukernavn og passord som du har lagt.

Hvis skriptet fungerer, vil du bli omdirigert til "login_success.php."

14 Dobbeltsjekk database legitimasjon hvis skriptet ikke kan koble til. Hvis skriptet ikke fungerer, vil det vise en forklaring (ingen tilgang på grunn av passord, etc).

modifikasjoner

15 Skriv inn følgende i "checklogin.php" hvis du kjører den nyeste versjonen av PHP (PHP5).

<? Php
ob_start ();
$ Host = "localhost"; // Vertsnavn
$ Username = ""; // Mysql brukernavn
$ Password = ""; // Mysql passord
$ Db_name = "test"; // Databasenavn
$ Tbl_name = "medlemmer"; // Tabell navn

// Koble til serveren og velger vår database.
mysql_connect ( "$ host", "$ username", "$ password") or die ( "kan ikke koble");
mysql_select_db ( "$ db_name") or die ( "kan ikke velge DB");

// Definer $ mittbrukernavn og $ mittpassord
$ Mittbrukernavn = $ _ POST [ 'mittbrukernavn'];
$ Mittpassord = $ _ POST [ 'mittpassord'];

// For å beskytte MySQL injeksjon (mer detalj om MySQL injeksjon)
$ Mittbrukernavn = stripslashes ($ mittbrukernavn);
$ Mittpassord = stripslashes ($ mittpassord);
$ Mittbrukernavn = mysql_real_escape_string ($ mittbrukernavn);
$ Mittpassord = mysql_real_escape_string ($ mittpassord);

$ Sql ​​= "SELECT * FROM $ tbl_name WHERE brukernavn = '$ mittbrukernavn" og passord =' ​​$ mittpassord ' ";
$ Resultat = mysql_query ($ sql);

// Mysql_num_row teller tabellen rad
$ Teller = mysql_num_rows ($ resultat);
// Hvis resultatet matchet $ mittbrukernavn og $ mittpassord, må tabellrad være en rad

if ($ count == 1) {
// Register $ mittbrukernavn, $ mittpassord og omdirigere til fil "login_success.php"
session_register ( «mittbrukernavn");
session_register ( «mittpassord");
header ( "location: login_success.php");
}
else {
echo "Feil brukernavn eller passord";
}

ob_end_flush ();
?>

16 Endre verdiene for $ host, $ brukernavn, $ passord, $ db_name og $ tbl_name.

17 Lagre filen som "checklogin.php" og lukke den. Last det opp til serveren din via filbehandleren eller FTP.

18 Open "main_login.php" og finn denne linjen:

<Td> <input name = "mittpassord" type = "text" id = "mittpassord"> </ td>

Change "tekst" til "password" og nettlesere vil vise stjerne (*) i stedet for tegn i passordet.

19 Lagre "main_login.php" og laste den opp til webområdet ditt.

Hint

  • Du kan redigere koden for innloggingsskjemaet til å endre sitt utseende, så lenge du holder <form>, <input> og </ form> tags (og inkludert attributter) intakt.
  • Din vert kan forsyne deg med database legitimasjon hvis du ikke kjenner dem.
  • Kryptering av passord gir ekstra sikkerhet til skriptet.