Ir para conteúdo
Fórum Script Brasil
  • 0

Erro nas nas condições if,else e include


juliano lopes

Pergunta

Boa Tarde Pessoal

tenho um script onde a pessoa irá se registrar, mas para isso é necessário que algumas informações não se repitam, então fiz um script para poder verificar e informar se login ou domínio é existente no banco de dados, porém quando efetuo o cadastro ou o resultado é em branco ou é erro na váriavel $dominio

aqui vai o script completo

Formulário

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<title>Cadastro de novo usuário</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<link href="file:///C|/servidor/www/teste/stylo.css" rel="stylesheet" type="text/css">
</head>

<body>
<div align="center" class="stilo">
  <p>Formulário de Cadastro </p>
  <form name="form1" method="post" action="cadastra.php">
    <p align="center" class="conteudo">Nome:
      <input name="nome" type="text" id="nome">
</p>
    <p align="center" class="conteudo">Email:
      <input name="mail" type="text" id="mail">
    </p>
    <p align="center" class="conteudo">Telefone:
      <input name="tel" type="text" id="tel">
    </p>
    <p align="center" class="conteudo">Domínio:
      <input name="dom" type="text" id="dom">
    </p>
    <p align="center" class="conteudo">Login:
      <input name="login" type="text" id="login">
    </p>
    <p align="center" class="conteudo">Senha:
      <input name="senha" type="text" id="senha">
    </p>
    <p align="center" class="conteudo">Observações:</p>
    <p align="center">      <span class="conteudo">
      <textarea name="obs"></textarea>
    </span></p>
    <p align="center">
      <span class="conteudo">
      <input type="submit" name="Submit" value="Cadastrar">
      </span></p>
  </form>
  <p align="left"> </p>
</div>
</body>
</html>
Cadastra.php
<?php
$nome=$_POST['nome'];
$tel=$_POST['tel'];
$mail=$_POST['mail'];
$user=$_POST['login'];
$senha=$_POST['senha'];
$obs=$_POST['obs'];
$dom=$_POST['dom'];
$data=date('d-m-Y');
$ativado='Não';
$senha=md5($senha);
$sql= "SELECT * FROM info WHERE dominio LIKE '$dom'";
include 'config.php';
$pesquisa=mysql_query($sql);
while($info=mysql_fetch_array($pesquisa)){
}
if($dom = $info['dominio']){
echo 'dominio igual';
}
else{
include 'registra.php';
}

?>
Registra
<?php
mysql_close($conecta);
include 'config.php';
$a = "SELECT * FROM info WHERE login LIKE '$user'";
$consulta=mysql_query($a);
while($info=mysql_fetch_array($consulta)){
}
if($user = $info['login']){
echo 'login já registrado';
}
else{
$n1=rand(1,9);
$n2=rand(1,9);
$n3=rand(1,9);
$n4=rand(1,9);
$id=$n1.$n2.$n3.$n4;
require_once('config.php');
$sql="INSERT INTO info (nome,mail,dominio,login,senha,telefone,id,ativado,data,obs) values ('$nome', '$mail', '$dom', '$user', '$senha', '$tel','$id','$ativado','$data','$obs')";
mysql_query($sql, $conecta) or die(mysql_error());
echo ('Adicionado com Sucesso');
mysql_close($conecta);
}

?>

segue scrip se alguém puder me ajudar

Editado por juliano lopes
Link para o comentário
Compartilhar em outros sites

5 respostass a esta questão

Posts Recomendados

  • 0
if($dom = $info['dominio']){

echo 'dominio igual';

}

else{

include 'registra.php';

}

Bom não sei qual está sendo o seu objetivo, mas em PHP "=" é diferente de "==".

= é receber, tipo: A recebe 2: a=2....

== esse é o iguai. 1==1.

agora você pode fazer o seguinte.

$domi= $_SERVER['SERVER_NAME'];

if($dom==$domi){
echo 'dominio igual';
}
else{
include 'registra.php';
}

este if vai esta comparando o dominio que o usuário digitou com o diminio que estar.

Agora o erro no include, pode ser o seguinte, você tem o arquivo CADASTRA.PHP, que esta recebendo os dados por meio do POST.

Pelo que entendi, você tem um terceiro arquivo, o REGISTRA.PHP.

Você teria que usar SESSAO no arquivo CADASTRA.PHP, para guardar os dados recebidos do formulario. Ai no REGISTRA, você start a sessão e manda grava no banco

Qualquer coisa posta ai!!!!

Editado por Nill
Link para o comentário
Compartilhar em outros sites

  • 0
Guest juliano lopes

no caso a variavel dominio que a pessoa digita é para ser comparada com a do db, no caso do terceiro arquivo estou usando a opção include, ou seja as informações continuam armazenadas sem a necessidade do session, axo q é isso hehehe

Link para o comentário
Compartilhar em outros sites

  • 0

Além da observação pontual da diferença entre = e == (e ainda faltou falar do ===, mas no caso não precisa mesmo), é bom ressaltar que seria muito mais útil verificar com mysql_num_rows a quantidade de registros vindos do BD se for igual a zero é porque nada foi encontrado, caso contário algo foi encontrado (meio óbvio...).

Link para o comentário
Compartilhar em outros sites

  • 0

digo assim, quando retorna, não quero apenas saber se ele encontrou ou não resultado, e sim qual resultado está igual ao do bd, para retornar se o login é igual ao do bd ou o dominio é igual ao bd, como aqui no forum, se eu tentar registrar com o mesmo login de outra pessoa não é possível e ele retornar o erro especifíco de login

Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,2k
    • Posts
      652,1k
×
×
  • Criar Novo...