Ajuda PHP (Erro de Login)

surfistacool

Power Member
Boas,
precisava de ajuda se possível.
Estou a fazer um trabalho (PAP), e finalmente após ter tudo concluido, deparei-me com este pequeno erro, que sinceramente não estou a compreender como o resolver, daí vos pedir ajuda.

Passo a explicar.

Após o registo, quando os utilizadores vão fazer o Login, tudo bem.
Mas se, o utilizador se enganar ele dá-me o mesmo erro "Notice: Undefined variable: cargo on line 26" e na linha 30.
Só reparei nesse erro quando ia meter um script alert de erro de autenticação.

Código:
<?php
$a=$_POST["t1"];
$b=$_POST["t2"];

if($a!="" && $b!==""){
    $site="localhost";
    $user="root";
    $pass="";
    $bd="loja";
    $liga=mysql_connect("$site","$user", "$pass");
    if(!mysql_select_db("$bd")) {
    echo "Base de Dados Indisponivel.";
    }
    $sql="select * from utilizador where email ='$a'";
    $resultado=mysql_query($sql, $liga);
    $num=mysql_num_rows($resultado);
    
    if($resultado) {
        while($registo=mysql_fetch_array($resultado)){
            $cargo=$registo["id_cargo"];
            $email=$registo["email"];
            $password=$registo["password"];
            $idu=$registo["id"];
        }
    }
    if($cargo==1 && $b==$password) {
        $_REQUEST['a']=$idu;
        include("login_user.php");
        
    } elseif($cargo==2 && $b==$password) {
    $_REQUEST['a']=$idu;
        include("login_admin.php");
    } else{
        include("index.php");
     }
}else {
        include("index.php");
}
?>

Obrigado,
Cumprimentos
 
Defini a variável cargo fora do if ($resultado).
Já agora, se o trabalho for avaliado a nível de segurança acho que não passas... Estás a confiar no utilizador...
 
Boas,
obrigado pelas rapidas respostas ;)

Já declarei $cargo="id_cargo";
E já meti o script echo"<script>alert('Erro de Autenticação!')</script>";


Cumprimentos
 
Back
Topo