Ir para conteúdo

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Monique Honey

Cadastramento

Recommended Posts

Oi :-)Gostaria de fazer um sistema em q o usuário digitasse o nome, e-mail, e comentários e isso fosse p/ um banco de dados em MySql. Já fiz o BD e a tabela. A minha dúvida é como seria a página "cadastro.html" e a página de resposta "resp_cadastro.php". Eu tentei fazer mas ñ estou conseguindo. Será q alguém poderia me ajudar me mandando um exemplo?Obrigada

Compartilhar este post


Link para o post
Compartilhar em outros sites

é só você criar os forms inserindo os dados em cada linha da tabela no BD. para fazer isso use assim:<? sua conexãomysql tabela INSER INTO('campo1', 'campo2','campo3'); ?>se nao entendeu mail- me[]´r

Compartilhar este post


Link para o post
Compartilhar em outros sites

Bom, fiz um exemplo bem simples, porém bem comentado... Espero que ajude.

 

cadastro.htm

<html> <head>  <title>Monique Honey</title> </head> <body>  <h1>Exemplo de Cadastro</h1>  <form action="resp_cadastro.php" method="post">   Seu nome:<br>   <input type="text" name="nome" size="30" maxlength="30"><br>   Seu email:<br>   <input type="text" name="email" size="30" maxlength="30"><br>   Seu comentário:<br>   <textarea name="comentario" rows="7" cols="38"></textarea><br>   <input type="submit" value="Enviar comentário">  </form> </body></html>

 

resp_cadastro.php

<?php //Cria variáveis abreviadas $nome = $_POST['nome']; $email = $_POST['email']; $comentario = $_POST['comentario'];?><html> <head>  <title>Monique Honey</title> </head> <body><?php //Elimina espaços em branco no início ou no final $nome = trim($nome); $email = trim($email); $comentario = trim($comentario); //Verifica se algo não foi preenchido corretamente if (!$nome) {  echo 'Você esqueceu de preencher o campo <b>"nome"</b>. Por favor, retorne a página anterior e tente novamente.';  exit; } else if (!$email) {  echo 'Você esqueceu de preencher o campo <b>"email"</b>. Por favor, retorne a página anterior e tente novamente.';  exit; } else if (!$comentario) {  echo 'Você esqueceu de preencher o campo <b>"comentário"</b>. Por favor, retorne a página anterior e tente novamente.'; exit; } $email = strtolower($email); // $email recebe $email em minúsculo  //Verifica a validade do email if (!eregi('^[a-zA-Z0-9_\-\.]+@[a-zA-Z0-9\-]+\.[a-zA-Z0-9\-\.]+$', $email)) {  echo 'Este não é um email válido. Por favor, retorne a página anterior e tente novamente.';  exit; } //Filtra os caracteres de controle $nome = addslashes($nome); $email = addslashes($email); $comentario = addslashes($comentario); //Conecta-se ao servidor @ $bd = mysql_pconnect('host', 'usuario', 'senha'); //Verifica se houve conexão if (!$bd) {  echo 'Erro na conexão com o banco.';  exit; } //Seleciona o banco mysql_select_db('nome_do_banco'); //Insere no banco $insere = "insert into nome_da_tabela values('".$nome."', '".$email."', '".$comentario."')"; $resultado = mysql_query($insere); if ($resultado)  echo mysql_affected_rows( ).' cadastro inserido no banco.'; //Desconcta do banco $bd->disconnect();?></body></html>

Compartilhar este post


Link para o post
Compartilhar em outros sites

Era o que eu estavaprecisando...valeu mesmo!Só resta uma dúvida:é q quando testo tal script gera um erro na linha da desconexão como segue:Fatal error: Call to a member function on a non-object in c:\apache\htdocs\cadastro.php on line 72obs: line 72 referece ao comando $bd->disconnect(); O q pode está acontecendo?

Compartilhar este post


Link para o post
Compartilhar em outros sites

Oi pessoal :-)Bom...a minha dúvida é a mesma do Radubrêdo.Eu testei o código e deu tudo certo, o cadastramento foi feito perfeitamente. O problema é que na pág resp_cadastro.php aparece a linha:Fatal error: Call to a member function on a non-object in c:\apache\htdocs\monique\exercicios_php\cadastrandonaweb\resp_cadastro.php on line 60A linha 60 a que ele se refere é a seguinte:$bd->disconnect();Se alguém puder ajudar eu agradeço.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Esse código está usando uma classe de abstração para acessar o banco de dados e aparentemente essa classe não foi incluida. Das duas uma: ou você procura essa classe e dá um include; ou adapta o código para usar as funções nativas do php para acesso a bd.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Foi mal pessoal.. Não era pra ir essa linha no código. Mas dêem um desconto, vejam a hora q postei o c''odigo... Mas como foi dito, vcs podem estar substituindo a linha: $bd->disconnect() por mysql_close(); para fechar a conexão com o banco, que o erro vai sumir... Ou simplesmente retirem, pois isso não é é estritamente necessário, pois as conexões são fechadas de qualquer jeito qdo um script conclui a execução...

Compartilhar este post


Link para o post
Compartilhar em outros sites

Só uma dúvida...Teria como aparecer uma caixa na tela (acho que o comando é alert) para o usuário clicar em ok caso o e-mail não fosse válido ou quando os dados já tivessem sido enviados, em vez de aparecer uma frase na tela??

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.