Veo algunos problemas de concepto y también de malas prácticas.
Código PHP:
Ver original<?php
include('config.php');
if(!isset($_POST['user']) && empty($_POST['pass'])){ sion_destroy();
header("Location: index.php"); }else{
$user= $_POST['user'];//no filtras la variable para que no te inyecten instrucciones maliciosas
$pass= md5($_POST['pass']); }
$query="SELECT user FROM users WHERE user='$user'";//Aqui metes la consulta en una variable, pero luego la colocas directa
if($numrow != 0){
$qp= mysql_query("SELECT user,pass FROM users WHERE user='$user'",$cn);//haces una segunda consulta if($numpass != 0){
if(!$row['pass'] == $pass){// es más simple usar != que negar el ==
echo "La contraseña ingresada es incorrecta, vuelve a iniciar sesion, ";
echo "<a href='index.php'>aqui</a>";
}else{
//echo "Bienvenido admin: ".$row['user'];
$_SESSION['s_user']=$row['user'];
header("location: index.php"); }
}else{
echo "no se encuentra el usuario ingresado\n";//No es conveniente indicar que el usuario no existe de cara a un posible ataque.
echo "por favor verifique los datos e ingrese nuevamente, <a href='index.php'>Inicio</a>";
}
}
?>
Una forma un poco simple sería así:
Código PHP:
Ver originalif(!mysql_num_rows($qp= mysql_query("SELECT user,pass FROM users WHERE user='$user'",$cn)))//vemos si la consulta regresa un dato die('Usuario o password incorrecto');//si no existe el usuario. Puedes mandar un mensaje, hacer una redirección o ambos
if($pass!=$pasbd)//si no coinciden los passwords
die('Usuario o password incorrecto');//Ponemos el mensaje
//si se encontró el usuario y si el password fue correcto
echo "Bienvenido";