Dúvidas sobre MySQL, PHPMyAdmin, SQL e assuntos relacionado a banco de dados.
Moderador: web
por jujuba Offline » Sex Jan 20, 2012 11:10 am
|
Ola, fiz um script de cadastro de usuarios para meu site, mas o mesmo nao adiciona os dados no banco. Abaixo o script. Agradçeo ajudas!
- Código: Selecionar todos
<?php
include ("../estrutura/conexao.php");
?>
<br> <p> Faça login para ter acesso a area restrita do site. </p>
</br>
<?php include ("../miolo/login.php"); ?>
<br>
<p>Caso nao tenha cadastro em nosso sistema, preencha os campos abaixoe resgistre-se.</p> <p> IMPORTANTE: Sua senha deverá ser alfanumerica! <br>
<table class="estilotabela"> <!-- <tr> <td colspan=2 class="estilocelulatitulo"> Cadastro De Usuarios: </td> </tr> </!--> <form method="POST"action=<?php echo $_SERVER["PHP_SELF"]."?dir=miolo&pagina=cadastro"; ?> name="addusuario">
<tr> <td class="estilocelulaesquerda">Nome: </td><td class="estilocelulaesquerda"> <input type="text" size="50" name="nome"> </td></tr> <tr> <td class="estilocelulaesquerda">Email: </td><td class="estilocelulaesquerda"> <input type="text" size="50" name="email"> </td></tr> <tr> <td class="estilocelulaesquerda">Instituição: </td><td class="estilocelulaesquerda"> <input type="text" size="50" name="instituicao"> </td></tr> <tr> <td class="estilocelulaesquerda">Login: </td><td class="estilocelulaesquerda"> <input type="text" size="50" name="login"> </td></tr> <tr> <td class="estilocelulaesquerda">senha: </td><td class="estilocelulaesquerda"> <input type="password" size="50" name="senha1"> </td></tr> <tr> <td class="estilocelulaesquerda">confirmar senha: </td><td class="estilocelulaesquerda"> <input type="password" size="50" name="senha2"> </td></tr>
<tr><td colspan=2 class="estilocelula"><input type="submit" value="Enviar" name="adduser"> </td></tr></table>
</form> <?php
if(isset($_POST["adduser"])){
$nome = $_POST["nome"]; $email = $_POST["email"]; $instituicao = $_POST["instituicao"]; $login = $_POST["login"]; $senha1 = $_POST["senha1"]; $senha2 = $_POST["senha2"];
if($senha1==$senha2 && preg_match("^[a-z0-9_\.\-]+@[a-z0-9_\.\-]*[a-z0-9_\-]+\.[a-z]{2,4}$^", "$email") && $instituicao !="" && $nome != "" && $login != "" ){
$sql_in = "INSERT INTO usuario(nome, email, instituicao, login, senha1) VALUES('".$nome."','".$email."',' ".$insituicao."','".$login."','".md5($senha1)."')";
if($query = mysql_query($sql_in)) echo "<br>Usuario cadastrado com sucesso!</br>";
}else{ echo "erro no cadastro"; }
}
?>
Obrigada!

jujuba
MEMBRO
Mensagens: 15
Registrado em: Qui Jan 12, 2012 10:27 am
|
por web Offline » Sex Jan 20, 2012 11:59 am
Dá algum erro?

Gostou do que encontrou? Divulgue, indique, participe, agradeça pelas respostas.
Faço scripts personalizados ou reparos em scripts. Orçamento MSN codigosnaweb1 [@] gmail [.] com
web
ADMIN
Mensagens: 12439
Registrado em: Sáb Jan 20, 2007 6:08 pm
Localização: RJ / RJ / Brasil
|
por jujuba Offline » Sex Jan 20, 2012 4:22 pm
sim, na verdade o script nao cadastra os dados no banco de dados. o que faço??

jujuba
MEMBRO
Mensagens: 15
Registrado em: Qui Jan 12, 2012 10:27 am
|
por web Offline » Sex Jan 20, 2012 5:05 pm
Usa essa base
- Código: Selecionar todos
$grava="INSERT into ..."; if( mysql_query($grava) ) { echo 'OK'; } else { echo mysql_error(); } Com essa base, quando tiver algum erro relacionado ao MySQL, como falta de conexão, nome de tabela ou coluna errada, você verá o erro. Ai se mostrar o erro você posta aqui.

Gostou do que encontrou? Divulgue, indique, participe, agradeça pelas respostas.
Faço scripts personalizados ou reparos em scripts. Orçamento MSN codigosnaweb1 [@] gmail [.] com
web
ADMIN
Mensagens: 12439
Registrado em: Sáb Jan 20, 2007 6:08 pm
Localização: RJ / RJ / Brasil
|
por jujuba Offline » Ter Jan 24, 2012 10:09 am
Mas em que ponto do script coloco a sua sugestão?? Quando a inseri fiz comentario nas linhas que subistiui e ocorreu erro sintaxe com fim inesperado, pelo que intendi.
O que faço??

jujuba
MEMBRO
Mensagens: 15
Registrado em: Qui Jan 12, 2012 10:27 am
|
por web Offline » Ter Jan 24, 2012 10:14 am
O que indiquei substitui isso
- Código: Selecionar todos
$sql_in = "INSERT INTO usuario(nome, email, instituicao, login, senha1) VALUES('".$nome."','".$email."',' ".$insituicao."','".$login."','".md5($senha1)."')";
if($query = mysql_query($sql_in)) echo "<br>Usuario cadastrado com sucesso!</br>";
}else{ echo "erro no cadastro"; }

Gostou do que encontrou? Divulgue, indique, participe, agradeça pelas respostas.
Faço scripts personalizados ou reparos em scripts. Orçamento MSN codigosnaweb1 [@] gmail [.] com
web
ADMIN
Mensagens: 12439
Registrado em: Sáb Jan 20, 2007 6:08 pm
Localização: RJ / RJ / Brasil
|
por jujuba Offline » Ter Jan 24, 2012 10:24 am
é, entao meu erro é o seguinte:
parse error: syntax error, unexpected $end in....e resulta uma linha que nem há comandos.

jujuba
MEMBRO
Mensagens: 15
Registrado em: Qui Jan 12, 2012 10:27 am
|
por web Offline » Ter Jan 24, 2012 10:43 am
Agora que percebi que seu if começa no if($senha1==$senha2
Ficaria assim
- Código: Selecionar todos
if($senha1==$senha2 && preg_match("^[a-z0-9_\.\-]+@[a-z0-9_\.\-]*[a-z0-9_\-]+\.[a-z]{2,4}$^", "$email") && $instituicao !="" && $nome != "" && $login != "" ){
$grava="INSERT into ..."; if( mysql_query($grava) ) { echo 'OK'; } else { echo mysql_error(); } // fim do if do insert } // fim do if $senha1
} // fim do if do POST

Gostou do que encontrou? Divulgue, indique, participe, agradeça pelas respostas.
Faço scripts personalizados ou reparos em scripts. Orçamento MSN codigosnaweb1 [@] gmail [.] com
web
ADMIN
Mensagens: 12439
Registrado em: Sáb Jan 20, 2007 6:08 pm
Localização: RJ / RJ / Brasil
|
por jujuba Offline » Ter Jan 24, 2012 10:56 am
naotem um "}" a mais?

jujuba
MEMBRO
Mensagens: 15
Registrado em: Qui Jan 12, 2012 10:27 am
|
por jujuba Offline » Ter Jan 24, 2012 10:58 am
olha só, fiz o que voce falou e me ocorreu dois erros...
primeiro -> undefined variable: grava in....
segundo -> call to undefined functon mysql_query_error() in...

jujuba
MEMBRO
Mensagens: 15
Registrado em: Qui Jan 12, 2012 10:27 am
|
por web Offline » Ter Jan 24, 2012 2:41 pm
Você colocou seu INSERT, ao invés do que coloquei: INSERT ...?

Gostou do que encontrou? Divulgue, indique, participe, agradeça pelas respostas.
Faço scripts personalizados ou reparos em scripts. Orçamento MSN codigosnaweb1 [@] gmail [.] com
web
ADMIN
Mensagens: 12439
Registrado em: Sáb Jan 20, 2007 6:08 pm
Localização: RJ / RJ / Brasil
|
por jujuba Offline » Qua Jan 25, 2012 9:52 am
entao, nao tinha colocado e apareciam esses erro.
Ai refiz e coloquei...nao aparece um erro se quer.mas meu banco n registra o cadastro..

jujuba
MEMBRO
Mensagens: 15
Registrado em: Qui Jan 12, 2012 10:27 am
|
por web Offline » Qua Jan 25, 2012 10:43 am
Acabei de testar o script aqui e está funcionando corretamente. Verifica ai se os dados da tabela estão corretos, nomes e valores.

Gostou do que encontrou? Divulgue, indique, participe, agradeça pelas respostas.
Faço scripts personalizados ou reparos em scripts. Orçamento MSN codigosnaweb1 [@] gmail [.] com
web
ADMIN
Mensagens: 12439
Registrado em: Sáb Jan 20, 2007 6:08 pm
Localização: RJ / RJ / Brasil
|
por jujuba Offline » Qua Jan 25, 2012 1:48 pm
Entao, mas quando eu faço o cadastro teste os dados que insiro deveriam ser salvos no meu banco não é? Quando eu vou ver meu banco, nao há dados cadastrados...este é meu problema.

jujuba
MEMBRO
Mensagens: 15
Registrado em: Qui Jan 12, 2012 10:27 am
|
por web Offline » Qua Jan 25, 2012 3:07 pm
Ai fica complicado. Como disse testei o trecho do INSERT que indiquei e está funcionando. Você está testando o script em um servidor local? Qual?

Gostou do que encontrou? Divulgue, indique, participe, agradeça pelas respostas.
Faço scripts personalizados ou reparos em scripts. Orçamento MSN codigosnaweb1 [@] gmail [.] com
web
ADMIN
Mensagens: 12439
Registrado em: Sáb Jan 20, 2007 6:08 pm
Localização: RJ / RJ / Brasil
|
Voltar para MySQL
Quem está online
Usuários navegando neste fórum: Nenhum usuário registrado e 1 visitante
|
|
|