Foros del Web » Programando para Internet » PHP »

problema con consulta mysql a variable

Estas en el tema de problema con consulta mysql a variable en el foro de PHP en Foros del Web. Hola, estoy haciendo una especie de login con un unico usuario, y al hacer el limite de 3 intentos, cree una tabla con el usuario, ...
  #1 (permalink)  
Antiguo 16/10/2009, 14:09
 
Fecha de Ingreso: mayo-2006
Mensajes: 154
Antigüedad: 17 años, 10 meses
Puntos: 0
problema con consulta mysql a variable

Hola,

estoy haciendo una especie de login con un unico usuario, y al hacer el limite de 3 intentos, cree una tabla con el usuario, clave, intentos, fecha,

la cuestión es que, no consigo sacar el valor del usuario de la base de datos


Código PHP:
<?php


if (!isset($_POST['usuario']))
{
 
?>

 <form action="?" method="post">
  <table border="0" style="margin:185px;border:2px solid #cc9900;" >
  <tr>
  <td>Usuario: </td><td> <input type="text" name="usuario" /></td>
  </tr>
  <tr><td>Contraseña: </td> <td><input type="password" name="contrasena" /></td></tr>
  <tr ><td colspan="2"><input type="submit" value="Iniciar Sesion" /></td></tr>
 </form>

 <?php
}
else
{
 
$conexion mysql_connect("localhost","root","");
 
$pass mysql_query("SELECT clave FROM usuarios WHERE id=1"$conexion);// DATOS ALMACENADOS EN LA BASE DE DATOS
 
$user mysql_query("SELECT usuario FROM usuarios WHERE id=1"$conexion);//DATOS ALMACENADOS EN LA BASE DE DATOS
 
$usuario $_POST['usuario'];//USUARIO INTRODUCIDO POR EL NAVEGADOR
 
$contrasena $_POST['contrasena'];//CLAVE INTRODUCIDA POR EL NAVEGADOR
 
 
if ($usuario == $user && $contrasena == $pass)
 {
 
$_SESSION['es_admin'] = true;
 
header("Location: gestion.php");
 }
 else
 {
        
mysql_query("UPDATE usuarios SET intentos=intentos+1 where usuario = usuario",$conexion);
        
$contamysql_query("select intentos from usuarios",$conexion);
        if(
$conta<3){header("Location:index.php");}
        else{
header("Location:noesadministrador.php");}
    }
 }
?>
No se que estoy haciendo mal, lo unico que se esque no me asigna a la variable el resultado de la consulta

Saludos y gracias de antemano
  #2 (permalink)  
Antiguo 16/10/2009, 14:13
Colaborador
 
Fecha de Ingreso: octubre-2009
Ubicación: Tokyo - Japan !
Mensajes: 3.867
Antigüedad: 14 años, 5 meses
Puntos: 334
Respuesta: problema con consulta mysql a variable

y en donde obtienes los datos de la consulta?...

$pass = mysql_query("SELECT clave FROM usuarios WHERE id=1", $conexion);
$user = mysql_query("SELECT usuario FROM usuarios WHERE id=1", $conexion);

esos 2 puedes unirlos en 1... SELECT usuario, clave FROM usuarios WHERE id = 1

luego de eso te falta un mysql_fetch_array para traer los datos a php..
  #3 (permalink)  
Antiguo 16/10/2009, 14:15
Avatar de MarioAraque
Colaborador
 
Fecha de Ingreso: octubre-2009
Ubicación: Valencia
Mensajes: 1.398
Antigüedad: 14 años, 5 meses
Puntos: 265
Respuesta: problema con consulta mysql a variable

Pero te falta hacer un fetch de cada select que hiciste, valdevespi.

$realuser = mysql_fetch_object($user);
$usuario == $user->usuario;

Con la contraseña te pasara lo mismo seguro.

Saludos.

EDIT: Ups ya te habian respondido
  #4 (permalink)  
Antiguo 16/10/2009, 14:31
 
Fecha de Ingreso: mayo-2006
Mensajes: 154
Antigüedad: 17 años, 10 meses
Puntos: 0
Respuesta: problema con consulta mysql a variable

Muchas gracias por responder, pero como estoy empezando no me aclaro mucho,
espero llegar a poder ayudar yo tambien.

segun decis esto saca de la variable user el valor que le asigna la consulta?


$realuser=mysql_fetch_object($user);


entonces luego para comparar seria con el realpass y realuser?

Código PHP:
$realuser mysql_fetch_object($user);
 
$realpass mysql_fetch_object($pass);
 if (
$usuario == $realuser && $contrasena == $realpass)
 { 
Saludos
  #5 (permalink)  
Antiguo 16/10/2009, 14:35
Colaborador
 
Fecha de Ingreso: octubre-2009
Ubicación: Tokyo - Japan !
Mensajes: 3.867
Antigüedad: 14 años, 5 meses
Puntos: 334
Respuesta: problema con consulta mysql a variable

$consulta = "SELECT usuario, clave FROM usuarios WHERE id = 1";
$consulta = mysql_query($consulta);
while ($registro = mysql_fetch_array($consulta)){
$usuario = $registro["usuario"];
$clave = $registro["clave"];
}

ahi tienes las variables de la db en $usuario y $clave...

saludos!!!!
  #6 (permalink)  
Antiguo 16/10/2009, 14:43
Avatar de MarioAraque
Colaborador
 
Fecha de Ingreso: octubre-2009
Ubicación: Valencia
Mensajes: 1.398
Antigüedad: 14 años, 5 meses
Puntos: 265
Respuesta: problema con consulta mysql a variable

Cita:
Iniciado por valdevespi Ver Mensaje
Muchas gracias por responder, pero como estoy empezando no me aclaro mucho,
espero llegar a poder ayudar yo tambien.

segun decis esto saca de la variable user el valor que le asigna la consulta?


$realuser=mysql_fetch_object($user);


entonces luego para comparar seria con el realpass y realuser?

Código PHP:
$realuser mysql_fetch_object($user);
 
$realpass mysql_fetch_object($pass);
 if (
$usuario == $realuser && $contrasena == $realpass)
 { 
Saludos
Claro, es que se supone que vos en $user guardas el resultado de la consulta (mysql_query). Entonces ese valor $user puede tener muchos resultados, los cuales vas sacando por medio de mysql_fetch_object, tambien podes sacarlos como arrays, pero bueno esa es cuestion de gustos.

Si pones $realuser=mysql_fetch_object($user); tendras , en $realuser, el valor de la fila de tu tabla usuarios....entonces, si pones $realuser->nombre (donde nombre viene a ser el un nombre de un campo de la tabla usuarios). Obtener el valor de dicha propiedad.

En tu codigo deberias poner:

Código PHP:
$realuser mysql_fetch_object($user);
 
$realpass mysql_fetch_object($pass);
 if (
$usuario == $realuser->usuario && $contrasena == $realpass->clave)
 { 
No se, me explaye mucho jeje, pero espero que te sirva.

Saludos.
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 12:40.