Criação de um website diretório membro com PHP envolve interligando três línguas : XHTML, MySQL e PHP. Este tutorial irá mostrar -lhe como criar uma página de formulário de login, validará a entrada de formulário, crie um banco de dados ea tabela para armazenar os nomes de usuário e senhas , conectar-se ao banco de dados e comparar os dados armazenados no banco de dados e os dados inseridos no formulário de login . Se as entradas correspondentes, o usuário terá acesso a página de diretório de um membro protegido por um script de autenticação. Coisas que você precisa
editor de texto como SourceEdit
Documento software upload como FileZilla
Server com PHP e MySQL instalados
Show Mais instruções
página de login
1
Digite o seguinte em seu editor de texto para criar a página web XHTML padrão, e salve-o como login.php :
< DOCTYPE html PUBLIC " - //W3C //DTD XHTML 1.0 Transitional //EN " " http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd "> < html xmlns =" http://www.w3.org/1999/xhtml " xml: lang = "en" Página 2
Digite o seguinte código para a tabela que irá conter o formulário de login entre o início
eo fim tag:
Esta é uma tabela com duas linhas e duas colunas. As etiquetas vazias "
| " conterá as caixas de texto para o nome de usuário ea senha do usuário final . A linha na parte inferior irá conter o botão enviar.
3
Digite tag início
validar o formulário
8
Digite o início e término tags para PHP , acima do cabeçalho DOCTYPE , como mostrado :
< ? php >
9
Digite o seguinte entre o início e término etiquetas para PHP:
if ( isset ( $ _POST [' submit' ] )) { }
o "se " instrução verifica para ver se o usuário final clicar no botão enviar , usando a função " isset ()" . Se o usuário fez clique no botão enviar , em seguida, o servidor irá seguir as instruções que estão entre as chaves {} . Se o botão enviar não foi clicado, em seguida, ele irá mostrar a página.
10
Digite o seguinte código dentro das chaves do " if" acima , para verificar para ver se o "username" caixa de texto está vazia :
if ( empty ($ _POST ['username ']) ) {} else { }
11
Se o campo estiver vazio , defina a variável "$ nome de Usuário " para" false " e exibir uma mensagem de erro :
$ username = false; echo" !
digite seu nome de usuário < ;/p> "; .
Digite este código entre o primeiro par de chaves encontrado na Etapa 3
12
Se o campo não está vazio , defina a variável " $ username "para" $ _POST [' username'] ", como mostrado :
$ username = $ _POST [ 'username' ];
13
Repita o processo com a senha , como mostra :
if ( empty ($ _POST [ 'password' ] )) { $ password = false; echo "
Por favor, digite a sua senha ! font> < /p> ";} else { $ password = $ _POST [ 'password' ] ;}
14 Digite o seguinte " declaração if /else "para se certificar de que o nome de usuário e campos de senha foram preenchidos corretamente :
if ($ username = && FALSE $ password = FALSE !) { } else {}
15
Se o nome de usuário e senha campos foram preenchidos corretamente , a declaração questão confirmação :
echo "
Você se conectou com sucesso em ! ,
"; .
Digite essa declaração entre o primeiro par de chaves no Passo 7
16
Se os campos de nome de usuário e senha não foram preenchidos corretamente , emitir uma mensagem de erro entre o segundo par de chaves em Passo 7:
echo "
Você poderia não estar conectado a este . tempo Veja acima de erro (s)
"; .
construir a tabela MySQL
17 Criar um novo banco de dados no servidor através do painel de controle do seu provedor. Se você estiver usando cPanel , clique no ícone " MySQL Databases" . Ligue para este banco de dados "membros ".
18
Atribuir o nome de usuário e senha para o banco de dados " membros " e conceder ao usuário " todos os privilégios . " Se você não tem CPanel , em seguida, conceder os seguintes privilégios :
* Atualização Select * Inserir * * Excluir * Índice * criar tabelas temporárias * Criar * Quadros Alter * Gota * Bloqueio * Referências * Criar Rotina
.
19
Criar uma nova tabela no banco de dados " membros " chamado "admin" com três campos (colunas)
20
Faça o seguinte:
* Coluna um deles, o nome " user_id " , tipo é " INT " , Extra = " auto_increment " , defina-o como " chave primária " * Coluna Dois, nome "username" , tipo é "TEXT" * Coluna Três, nome "password ", digite é também "TEXT" * Defina o mecanismo de armazenamento para MyISAM e salvar a tabela
21
Utilize este o código completo para criar a tabela , se você não tem o PHP MyAdmin : .
CREATE TABLE ` membros ` . `admin ` (` user_id ` INT NOT NULL AUTO_INCREMENT PRIMARY KEY, ` username` TEXT NOT NULL, `password ` TEXT NOT NULL ) ENGINE = MyISAM
22
Digite o seguinte código para inserir o seu nome de usuário e senha na tabela "admin". Substitua suas informações de login , onde o real letras maiúsculas "username" e "password estão localizados: .
INSERT INTO ` membros ` ` admin ` VALUES ( NULL (` user_id `,` nome `,` senha ` ) , 'USERNAME ', ' SENHA ');
Entrada confirmação e Sessões
23
Digite o seguinte código no topo do seu documento, após a tag de início para PHP . Ligue para o seu servidor remoto e acessar o banco de dados " membros ", como mostrado :
$ DAP = mysql_connect ( " SERVERNAME ", " username" , "senha" ) or die ( " não consigo me conectar ao banco de dados porque : . '. mysql_error ()); mysql_select_db ( "membros" );
substituir as letras maiúsculas com as palavras apropriadas a partir do seu servidor " " é muitas vezes chamado de " localhost ".
24
Digite o seguinte acima da confirmação onde se lê :
echo "
Você se conectou com sucesso em < ;/font> < /p> "; , como mostrado: $ query =" SELECT user_id de admin ONDE username = ' $ username ' AND password = '$ senha ' "; $ result = @ mysql_query ( $ query ); $ linha = mysql_fetch_array ($ resultado , MYSQL_NUM ); if ( $ row ) {} else { }
Explicação: Atribuir o MySQL "SELECT" declaração à variável chamada " $ query " , selecionando a opção " user_id " de tabela "admin" onde as colunas "username" e "password" são iguais aos valores das variáveis " $ username " e "$ senha. " Atribuir a variável " $ query " como um parâmetro da função " mysql_query () " e defini-lo igual a uma nova variável chamada "$ resultado". Adicione a variável " $ result " como um parâmetro para a função " mysql_fetch_array ()" , junto com o parâmetro " MYSQL_NUM " e configurá-lo igual a uma nova variável chamada "$ linha. " Criar um " " instrução para determinar se a consulta funcionou ou não , verificando a variável" if /else $ row ".
25
Se a consulta funcionou corretamente , defina o valor da superglobal variável " $ _SESSION " e seu parâmetro " user_id " para a variável " $ linha " valor inicial , que é chamado de "0" , como mostrado:
$ _SESSION [' user_id '] = $ row [0];
Adicione um link para o diretório membro protegido por senha, como mostrado:
echo " Vá para Diretor de Membros Páginas aqui . ";
a variável superglobal " $ _SESSION "mantém qualquer valor que é atribuído a entre qualquer número de páginas que têm a " função " session_start () listado na parte superior , permitindo que o usuário que fez login para acesso páginas protegidas sem ter que entrar em cada um
26
Digite o seguinte código entre chaves a " outra pessoa " , no caso da tentativa de login falhou: .
echo "
tentativa de login falhou , por favor, tente novamente
"; !
27 Feche a conexão com o . banco de dados com a função " mysql_close ()" Digite a função após o código no Passo 4 :
mysql_close ();
Autenticação
28
Crie uma nova página chamada " mem_directory.php " com o seguinte código :
< DOCTYPE html PUBLIC " - //W3C //DTD XHTML 1.0 Transitional //EN" " http://www.w3 .org/TR/xhtml1/DTD/xhtml1-transitional.dtd "> < html xmlns =" http://www.w3.org/1999/xhtml " xml: lang = " en "
29
Digite o início e término tags PHP acima da declaração DOCTYPE : < ? php >
30
Digite a função " session_start () " após o início " session_start ();
31
Digite a seguinte instrução de validação para verificar para ver se o " $ _SESSION " variável foi definida (ou se a pessoa tiver logado) :
if (! isset ($ _SESSION [' user_id ']) ) {} else { }
a declaração diz : Se o " $ _SESSION user_id " variável " " não foi definido , siga estas instruções , caso contrário , siga estas instruções .
32
Se a sessão não foi definido, redirecioná-los para a página de login com o" header () "Função :
header (" Location: http://www.yoursite.com/login.php "); exit () ;
33
Se o usuário estiver logado ea variável de sessão é definida, então bem-vindo o membro para o diretório do membro:
echo " Bem-vindo ao Diretório membro ! ";
Sair
34
Digite o seguinte para vincular cada página para a página de logout :
href="logout.php"> Sair
Adicionar este link para todos os Estados do páginas
35
Crie a página de logout e salvá-lo como logout.php :
< DOCTYPE html PUBLIC " - //W3C //DTD XHTML 1.0 Transitional //EN . ! " " http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd "> < html xmlns =" http://www.w3.org/1999/xhtml " xml: lang = "en"
36
Adicione um par de abertura e fechamento PHP no topo do documento : < ? php >
37
Digite o seguinte entre as tags PHP para destruir a sessão:
session_start (); session_destroy ();
38
Digite o seguinte para que o usuário saiba que eles têm registrado fora do sistema :
Você agora desconectado.
Clique aqui fazer login novamente .