CRIAR BROWSER GAME - 2# A página de registo (Perl) Parte 1

Ontem, eu introduzi-lo a construir sua página de cadastro usando o popular linguagem PHP. Hoje, eu vou estar fazendo a mesma coisa - exceto em Perl.

Eu estou supondo que você já tenha configurado seu banco de dados de acordo com as instruções de ontem. Se você não tiver, aqui está o SQL que você precisa para ser executado em um novo banco de dados:

CREATE TABLE usuários ( 	int id NOT NULL AUTO_INCREMENT, 	nome varchar(250), 	senha varchar(50), 	PRIMARY KEY(id) );

Uma vez feito isso, podemos começar a escrever a nossa Perl. Primeiro, você vai querer criar um novo arquivo cgi, e coloque esse código nele para criar o nosso formulário de arranque.:

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 
# Perl! / Usr / bin /   uso estrito;		# estes irão ajudá-lo a detectar erros mais fácil usar advertências;		# veja acima use CGI qw(:cgi); use CGI::Carp qw(warningsToBrowser fatalsToBrowser); use DBI;   minha $ query = novo CGI; minha $ html, $ html .= qq ~ <método forma='post' ação='register.cgi'> Nome: <input type='text' nome='username' /> <br /> Senha: <input type='password' nome='password' /> <br /> Confirmar Senha: <input type='password' nome='confirmar' /> <br /> <input type="submit ' valor=' Registrar ' /> formulário> ~;   imprimir $ query->header(); imprimir $ html;

Isso define o nosso roteiro básico. Usamos o pragma rigorosa, e os CGI e DBI módulos. rigorosa nos ajudará na depuração e pegar menores bagunça-ups para nós. CGI irá nos ajudar a fazer todas as nossas coisas da web como forma de manipulação e impressão de cabeçalho e DBI é como nós irá se conectar ao nosso banco de dados. O CGI:: Carp módulo irá fazer com que as mensagens de erro que aparecem são impressos em nosso navegador, em vez de apenas nos causando dores de cabeça.

Em seguida, criamos um objeto CGI novo e armazená-lo em $ query. Iremos utilizar este objeto CGI para imprimir nosso cabeçalho depois (e uma vez que temos a fazer uma página de login, vamos usá-lo para cookies impressão).

Uma vez que temos nosso objeto CGI instituído, criamos a variável $ html, e começar a armazenar o código HTML que será a saída para ele. Usamos a qq operador, para que possamos armazenar várias linhas de texto facilmente, com interpolação de variáveis dentro dela. Nós também usamos o operador .= para concatenar texto para o nosso $ htmlvariável, de modo que quando estamos adicionando mensagens de erro mais tarde podemos acrescentar que todos a uma variável sem que nada sobre-escrever o outro - o que significa que no final do nosso código só precisamos de cuspir o conteúdo do $ html. Depois que terminar, vamos imprimir um cabeçalho com o nosso objeto CGI (por padrão, ela imprime um texto / cabeçalho html), e em seguida imprimir a nossa saída de HTML.

Depois que terminar, vamos precisar adicionar algum código para manipular quando o nosso formulário é submetido.Seguindo a mesma ordem do post de ontem, vamos verificar se a senha ea senha de confirmação primeira partida.

10 11 12 13 14 15 16 17 18 19 20 21 
meus argumentos% = $ query->Vars; minha $ html;   se(os argumentos%) { 	se($ argumentos{password} ne $ argumentos{confirmar}) { 		$ html .= qq ~ <span style="color: red '>Erro! essas senhas que não correspondem/ <span>	 		~;	 	} }   $ html .= qq ~

Neste pedaço de código, vamos começar por guardar os nossos argumentos para os argumentos% hash, chamando o método Vars em $ query. Este armazena todos os argumentos destacados em nosso hash, com seus nomes como chaves no hash. Depois que terminar, fazemos uma verificação básica para se certificar de que os argumentos% não está vazia antes de começar a realizar operações com ele. Dentro do nosso caso, quando os argumentos% tem coisas dentro dele, vamos verificar para ver se as senhas são iguais uns aos outros. Se eles não estiverem, nós concatenar uma string para o início do $ html, com a nossa mensagem de erro útil dentro.

Depois que o teste de senha é feito, podemos passar para verificar se o nome solicitado está disponível. A fim de fazer isso, vamos precisar de se conectar ao nosso banco de dados usando o módulo DBI:

18 19 20 21 22 23 24 
	} mais { 		meu dbhost $ = 'localhost'; 		minha $ dbname = "nome"; 		meu dbuser $ = 'user'; 		meu dbpass $ = 'pass'; 		minha $ dbh = DBI->contato("DBI: mysql: $ dbname: "dbhost $,$ dbuser,$ dbpass,{RaiseError => 1}); 	}

0 Response to "CRIAR BROWSER GAME - 2# A página de registo (Perl) Parte 1"

Postar um comentário

powered by Blogger | WordPress by Newwpthemes | Converted by BloggerTheme