Autor Tema: [AYUDA] como indicar que si los datos no son iguales que la DB ...  (Leído 1045 veces)

Desconectado Balita

  • PHPer@ Fijo
  • ***
  • Mensajes: 173
  • Karma: 2
  • Sexo: Masculino
  • Dale tiempo al tiempo...
    • Ver Perfil
[AYUDA] como indicar que si los datos no son iguales que la DB ...
« en: 12 de Abril de 2008, 22:44:07 pm »
Hola
quisiera saber como hacer para que cuando los datos que ponen no son iguales que los de la DB le diga los datos son erroneos y si son verdaderos le lleve a la pagina con las opciones. aquí me quedé pillado:
<?php
include(&#39;conectar.php&#39;);
$name=$_POST(&#39;name&#39;);
$pass=$_POST(&#39;pass&#39;);
$query mysql_query("SELECT usuario, contraseña FROM `usuarios` WHERE `usuario` = &#39;$name&#39; && `contraseña` = &#39;$pass&#39;");
$array mysql_fetch_row($query);

Un saludo y gracias de antemano.
<?php  Balita[PHPeros User];  ?>

Comunidad PHPeros

[AYUDA] como indicar que si los datos no son iguales que la DB ...
« en: 12 de Abril de 2008, 22:44:07 pm »

Desconectado x.mara.x

  • PHPero Master
  • ******
  • Mensajes: 1.364
  • Karma: 57
  • Sexo: Femenino
    • Ver Perfil
Re: [AYUDA] como indicar que si los datos no son iguales que la DB ...
« Respuesta #1 en: 12 de Abril de 2008, 23:03:01 pm »
pues primero que todo asi no seria.. o por lo menos asi no lo hago yo.. yo lo haria asi
<?php
include('conectar.php');
$name=$_POST['name'];
$pass=$_POST['pass'];
$query = mysql_query("SELECT * FROM usuarios WHERE usuario = '$name' && contraseña = '$pass'");

if(mysql_num_rows($query)==0) {
echo"datos incorrectos";
} else {
echo"datos correctos.";
}
?>

Desconectado Balita

  • PHPer@ Fijo
  • ***
  • Mensajes: 173
  • Karma: 2
  • Sexo: Masculino
  • Dale tiempo al tiempo...
    • Ver Perfil
Re: [AYUDA] como indicar que si los datos no son iguales que la DB ...
« Respuesta #2 en: 13 de Abril de 2008, 11:50:29 am »
Gracias Mara karma + quizas tenga otra duda en ese caso la posteo aquí porque esta muy relaccionado
Un Saludo
<?php  Balita[PHPeros User];  ?>

Desconectado Tope

  • PHPero Experto
  • *****
  • Mensajes: 540
  • Karma: 23
  • Sexo: Masculino
  • Programador PHP
    • Ver Perfil
    • www.Info-Keko.Es
Re: [AYUDA] como indicar que si los datos no son iguales que la DB ...
« Respuesta #3 en: 13 de Abril de 2008, 11:51:06 am »
exactamente en variables superglobales la regla es $_VARIABLE['valor']  no $_VARIABLE('valor')
y no hace falta hacer el query tb para buscar la contraseña...
este es un ejemplo para contraseñas encriptadas en MD5, si no las tienes bues borra md5(  y )
¡Ultima cosa! -> En el codigo habias puesto contraseña (con la EÑE), si tu servidor, tu y mysql no os llevais bien con la codificación de caracteres, mejor que no uses Ñ, Ç, ni acentos

include(&#39;conectar.php&#39;);
$query mysql_query("SELECT usuario, contrasena, id FROM `usuarios` WHERE `usuario` LIKE &#39;".$_POST[&#39;name&#39;]."&#39;"); // no usamos =, usamos LIKE para que funcione con mayusculas o sin mayusculas
$rows mysql_num_rows($query);
if(!
$rows or $rows == 0){
     echo (&
#39;Usuario inexistente&#39;);
} else {
     
$datos mysql_fetch_array($query);
     if(
$datos[&#39;contrasena&#39;] != md5($_POST[&#39;pass&#39;]){
          
echo (&#39;Contraseña incorrecta&#39;);
     
} else {
          echo (&
#39;Bienvenido &#39;.$_POST[&#39;name&#39;]);
          
setcookie(&#39;id&#39;, $datos[&#39;id&#39;], time()+3600);
          
setcookie(&#39;usuario&#39;, $datos[&#39;usuario&#39;], time()+3600);
          
setcookie(&#39;contrasena&#39;, $datos[&#39;contrasena&#39;], time()+3600);
     
}
}

Un Saludo, Tope >> Programador FIJO en PHPeros

Desconectado x.mara.x

  • PHPero Master
  • ******
  • Mensajes: 1.364
  • Karma: 57
  • Sexo: Femenino
    • Ver Perfil
Re: [AYUDA] como indicar que si los datos no son iguales que la DB ...
« Respuesta #4 en: 13 de Abril de 2008, 17:46:37 pm »
sip lo c que no hace falta ^^ lo puedes hacer como dice tope tambn.. pero me parece mas complicado :P

Desconectado Tope

  • PHPero Experto
  • *****
  • Mensajes: 540
  • Karma: 23
  • Sexo: Masculino
  • Programador PHP
    • Ver Perfil
    • www.Info-Keko.Es
Re: [AYUDA] como indicar que si los datos no son iguales que la DB ...
« Respuesta #5 en: 13 de Abril de 2008, 18:14:41 pm »
Pd. acabo de darme cuenta de un fallo muy grave, he puesto el echo y luego los setcookie, es al reves ya que si no devolvera error de header..
Un Saludo, Tope >> Programador FIJO en PHPeros

Desconectado x.mara.x

  • PHPero Master
  • ******
  • Mensajes: 1.364
  • Karma: 57
  • Sexo: Femenino
    • Ver Perfil
Re: [AYUDA] como indicar que si los datos no son iguales que la DB ...
« Respuesta #6 en: 18 de Abril de 2008, 20:14:01 pm »
sep, pero las cookies son inseguras no las recomiedno

Desconectado naveda

  • Administrador General
  • PHPero Master
  • *****
  • Mensajes: 2.282
  • Karma: 165
  • Sexo: Masculino
    • Ver Perfil
    • naveda.me
Re: [AYUDA] como indicar que si los datos no son iguales que la DB ...
« Respuesta #7 en: 19 de Abril de 2008, 15:48:55 pm »
x.mara.x las Cookies son seguras, el problema es tu forma de tratar la informacion, evidentemente no puedes hacer COOKIEs con datos vitales del usuario... con poner la ID, el USUARIO y la PASS yo creo que se puede comprobar realmente si las cookies son falsas o son reales...
Por favor, leete las Normas


Desconectado Tope

  • PHPero Experto
  • *****
  • Mensajes: 540
  • Karma: 23
  • Sexo: Masculino
  • Programador PHP
    • Ver Perfil
    • www.Info-Keko.Es
Re: [AYUDA] como indicar que si los datos no son iguales que la DB ...
« Respuesta #8 en: 19 de Abril de 2008, 15:57:19 pm »
exactamente, id, usuario y la passw...

ejemplo:
id = 1
user = Tope
pass = e10adc3949ba59abbe56e057f20f883e
------
y luego hacer como un loguear pero en lugar con los datos del formulario, con las cookies y ya sabes si son o no correctas en caso de ser incorrectas, borras las cookies, le baneas si quieres y un exit/die
Un Saludo, Tope >> Programador FIJO en PHPeros

Desconectado x.mara.x

  • PHPero Master
  • ******
  • Mensajes: 1.364
  • Karma: 57
  • Sexo: Femenino
    • Ver Perfil
Re: [AYUDA] como indicar que si los datos no son iguales que la DB ...
« Respuesta #9 en: 20 de Abril de 2008, 22:12:48 pm »
no entendi lo que dijiste naveda, a mi todos los programadores de phperos me han dicho lo mismo :S