Ir para conteúdo

POWERED BY:

Arquivado

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

maaxwellz

ajuda Undefined index php

Recommended Posts

Galera, alguem pode me ajudar a identificar o problema? Estou colocando tudo de acordo com o BD , mas sempre acusa este erro.

 

 

"Notice: Undefined index: usuario in D:\"

 

 

codigo:

<?php
 
$usuario = $_POST['usuario'];
$senha = MD5($_POST['senha']);
$connect = mysql_connect('localhost','root','');
$db = mysql_select_db('mypersonal');
$query_select = "SELECT usuario FROM login WHERE usuario = '$usuario'";
$select = mysql_query($query_select,$connect);
$array = mysql_fetch_array($select)or die ("".mysql_error());
$logarray = $array['usuario'];
 
    if($usuario == "" || $usuario == null){
        echo"<script language='javascript' type='text/javascript'>alert('O campo login deve ser preenchido');window.location.href='cadastro.html';</script>";
 
        }else{
            if($logarray == $usuario){
 
                echo"<script language='javascript' type='text/javascript'>alert('Esse login já existe');window.location.href='cadastro.html';</script>";
                die();
 
            }else{
                $query = "INSERT INTO usuario (usuario,senha) VALUES ('$usuario','$senha')";
                $insert = mysql_query($query,$connect);
                 
                if($insert){
                    echo"<script language='javascript' type='text/javascript'>alert('Usuário cadastrado com sucesso!');window.location.href='login.php'</script>";
                }else{
                    echo"<script language='javascript' type='text/javascript'>alert('Não foi possível cadastrar esse usuário');window.location.href='cadastro.html'</script>";
                }
            }
        }
?>

Obrigado pela atenção.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Verifica se tens mesmo um campo chamado usuario no teu formulário, pois aparentemente não está a ser passado correctamente.

Compartilhar este post


Link para o post
Compartilhar em outros sites
Visitante


<?php

 

$usuario = $_POST['usuario'];

$senha = md5($_POST['senha']);

$connect = mysql_connect('localhost', 'root', '');

$db = mysql_select_db('mypersonal');

$query_select = "SELECT usuario FROM login WHERE usuario = '$usuario'";

$select = mysql_query($query_select, $connect)or die(mysql_error()); //MODIFICADO

$contaSeExiste = mysql_num_rows($select);

 

if (empty($usuario))

{

echo"<script language='javascript' type='text/javascript'>alert('O campo login deve ser preenchido');window.location.href='cadastro.html';</script>";

}

else

{

//vê se existe mais de um no banco

if ($contaSeExiste >= 1)

{

echo"<script language='javascript' type='text/javascript'>alert('Esse login já existe');window.location.href='cadastro.html';</script>";

}

else

{

$query = "INSERT INTO usuario (usuario, senha) VALUES ('$usuario','$senha')";

$insert = mysql_query($query, $connect);

if ($insert)

{

echo"<script language='javascript' type='text/javascript'>alert('Usuário cadastrado com sucesso!');window.location.href='login.php'</script>";

}

else

{

echo"<script language='javascript' type='text/javascript'>alert('Não foi possível cadastrar esse usuário');window.location.href='cadastro.html'</script>";

}

}

}

?>

Compartilhar este post


Link para o post
Compartilhar em outros sites
Visitante

Olha, acho melhor você migrar o mysql está extinto/arcaico/obsoleto, use PDO ou MYSQLI.

Outra coisa, tente usar o password_hash para criar a senha e password_verify() para verificar a senha, e boas práticas.

Compartilhar este post


Link para o post
Compartilhar em outros sites

O índice 'usuario' não existe no array $_POST. Use isset() para verificar antes de atribuir

Mais detalhes aqui: http://rberaldo.com.br/as-mensagens-de-erros-mais-comuns-do-php/#undef_index

 

 

PS: funções mysql_* estão obsoletas desde o PHP 5.5 e já foram removidas no PHP 7. Prefira usar MySQLi ou PDO. Veja mais aqui: http://rberaldo.com.br/mysql-obsoleto-php/

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.