Foros del Web » Programando para Internet » PHP »

Login php

Estas en el tema de Login php en el foro de PHP en Foros del Web. A VER SI ALGUIEN ME PUEDE AYUDAR YA TENGO LISTO EL REGISTO Y GRABA PERFECTAMENTE EN LA BASE DE DATOS, ESA PARTE FUNCIONA PERFECTAMENTE, LO ...
  #1 (permalink)  
Antiguo 02/09/2011, 15:10
 
Fecha de Ingreso: septiembre-2011
Ubicación: guadalajara
Mensajes: 23
Antigüedad: 12 años, 8 meses
Puntos: 1
Login php

A VER SI ALGUIEN ME PUEDE AYUDAR YA TENGO LISTO EL REGISTO Y GRABA PERFECTAMENTE EN LA BASE DE DATOS, ESA PARTE FUNCIONA PERFECTAMENTE, LO QUE NO LOGRO HACER FUNCIONAR ES EL LOGIN
USER Y PASS PARA INGRESO A AREA DE MIEMBROS.

////////////////////////////////////////////////////////////////////////////////
FORMULARIO HTML DE LOGIN PIDE USER Y PASS Y SU ACTION ES:
validar_usuario.php
///////////////////////////////////////////////////////////////////////////////

<form id="memberForm" name="form1" method="post" action="validar_usuario.php">
<h2>Miembros</h2>
<input name="textfield" type="text" value="Tu Usuario" />
<input name="textfield2" type="password" value="Password" />
<br class="spacer" />
<p class="remember">remember<br />
your password</p>
<input name="checkbox" type="checkbox" class="check" value="checkbox" />
<br class="spacer" />
<div class="login"> <a href="#" class="registerBtn" title="register">REGISTER</a>
<input name="Submit3" type="submit" class="loginBtn" value="LOGIN" title="login" alt="login" />
</div>
</form>

CUANDO ME LOGEO CON UN USUARIO YA REGISTRADO EN LA BASE DE DATOS ME TIRA ESTE ERROR
-----------------------------------------------------------------
Advertencia : mysql_fetch_array () espera un parámetro a ser el recurso, boleano dado en / home / wwwclick / public_html / html / validar_usuario.php en la línea 12
Usuario no existente en la base de la Datos Índice
-----------------------------------------------------------------

///////////////////////////////////////////////////////////////////////////////
ESTE ES EL ARCHIVO VALIDAR_USUARIO.PHP
////////////////////////////////////////////////////////////////////////////////

<?php
session_start();
?>
<?php
mysql_connect("localhost","wwwclick_click","nk22") ;
mysql_select_db('wwwclick_base');
$usuario = strtolower($_POST["username"]);
$password = $_POST["password"];
if($usuario!= "" && $password!= "")
{
$sql = mysql_query('SELECT password, usuario FROM usuarios WHERE usuario="'.$usuario.'"');
if($f= mysql_fetch_array($sql)){
if($f["password"] == $password){
$_SESSION["username"] = $f['usuario'];
echo 'Has sido logueado correctamente '.$_SESSION['username'].' <p>';
echo '<a href="index.php">Index</a></p>';

}else{
echo 'Password incorrecto';
echo '<a href="index.php">Index</a></p>';
}
}else{
echo 'Usuario no existente en la base de datos ';
echo '<a href="index.php">Index</a></p>';
}

}

?>

ESPERO ALGUIEN ME PUEDA AYUDAR A TERMINAR ESE LOGEO, LE AGRADECERE MUCHO INCLUSO LE OFREZCO UN HOSTING PAGO DE REGALO AL QUE LOGRE TERMINAR DE ARMARME ESTE LOGEO QUE NO LOGRO PARECE QUE YA ESTA CASI LISTO PERO ME TIRA ESE ERROR.
ESPERO ME PUEDAN AYUDAR GRACIAS.
MI EMAIL: solanasnet arroba hotmail.com
  #2 (permalink)  
Antiguo 02/09/2011, 15:53
Avatar de PIRRUMAN  
Fecha de Ingreso: febrero-2006
Ubicación: Monterrey, Nuevo León
Mensajes: 633
Antigüedad: 18 años, 3 meses
Puntos: 53
Respuesta: Login php

esto:
Cita:
$sql = mysql_query('SELECT password, usuario FROM usuarios WHERE usuario="'.$usuario.'"');
armalo asi:
Cita:
$sql="SELECT password, usuario FROM usuarios WHERE usuario='$usuario';";
$rslt=mysql_query($sql);
despues de esta linea escribe
Cita:
print "sentencia=".$sql;
exit;
con esto verificas q lo que devuelva este completo y sn errores,,
para saber esto

lo q te imprima lo puedes copiar y ejecutar en un manejador de bd
__________________
“Prefiero ser un tonto momentaneo que un eterno ignorante”
“¡El éxito es resultado de los aciertos,los aciertos resultado de la experiencia y la experiencia resultado de los errores!”
  #3 (permalink)  
Antiguo 02/09/2011, 16:13
Avatar de xtimed  
Fecha de Ingreso: julio-2009
Ubicación: BCN - México
Mensajes: 226
Antigüedad: 14 años, 9 meses
Puntos: 41
Respuesta: Login php

Cambia las comillas de lugar, mira, cambia esta linea:
Código PHP:
$sql mysql_query('SELECT password, usuario FROM usuarios WHERE usuario="'.$usuario.'"'); 
Por esta otra:
Código PHP:
$sql mysql_query("SELECT password, usuario FROM usuarios WHERE usuario='".$usuario."'"); 
__________________
Genio es todo aquel que conoce sus cualidades
  #4 (permalink)  
Antiguo 02/09/2011, 16:56
Avatar de miguec04  
Fecha de Ingreso: agosto-2008
Ubicación: Cimitarra, Santander
Mensajes: 378
Antigüedad: 15 años, 8 meses
Puntos: 15
Respuesta: Login php

Código PHP:
Ver original
  1. $sql = mysql_query("SELECT password, usuario FROM usuarios WHERE usuario='".$usuario."'");

yo le agregaria que me buscara el password de una vez en la consulta, y utilizaría el like

Código PHP:
Ver original
  1. $sql = mysql_query("SELECT password, usuario FROM usuarios WHERE usuario like '".$usuario."' and password like '".$password."'");
  #5 (permalink)  
Antiguo 02/09/2011, 17:14
Avatar de mcun  
Fecha de Ingreso: octubre-2010
Ubicación: tras la pantalla
Mensajes: 466
Antigüedad: 13 años, 6 meses
Puntos: 55
Respuesta: Login php

Todos los ejemplos que postearon son vulnerables a inyeción sql ...

usa [URL="http://www.php.net/manual/es/function.mysql-real-escape-string.php"]mysql_real_escape_string()[/URL]
  #6 (permalink)  
Antiguo 02/09/2011, 18:30
Avatar de xtimed  
Fecha de Ingreso: julio-2009
Ubicación: BCN - México
Mensajes: 226
Antigüedad: 14 años, 9 meses
Puntos: 41
Respuesta: Login php

Cita:
Iniciado por mcun Ver Mensaje
Todos los ejemplos que postearon son vulnerables a inyeción sql ...

usa [URL="http://www.php.net/manual/es/function.mysql-real-escape-string.php"]mysql_real_escape_string()[/URL]
Por lo que ví solo esta pidiendo ayuda con el error que le marca, no estaría mal ver las vulnerabilidades pero primero se tendría que solucionar el problema planteado
__________________
Genio es todo aquel que conoce sus cualidades
  #7 (permalink)  
Antiguo 02/09/2011, 18:44
Avatar de mcun  
Fecha de Ingreso: octubre-2010
Ubicación: tras la pantalla
Mensajes: 466
Antigüedad: 13 años, 6 meses
Puntos: 55
Respuesta: Login php

sin duda, pero visto que el camarada esta aprendiendo no esta de mas darle un poquito mas que no es tanto es solo escapar los datos con la función mencionada.

Yo como vi ese detalle lo comente ya que por lo otro me parece que está resuelto ...
  #8 (permalink)  
Antiguo 02/09/2011, 19:25
Avatar de hasdpk  
Fecha de Ingreso: agosto-2011
Ubicación: $spain->city( 'Arucas' );
Mensajes: 1.800
Antigüedad: 12 años, 8 meses
Puntos: 297
Respuesta: Login php

No comprendo la manía de la gente en general de concatenar cadenas cuando la propia cadena puede interpretar las variables sin ningún problema:

Código PHP:
Ver original
  1. $sql = mysql_query("SELECT password, usuario FROM usuarios WHERE usuario = '$usuario'");

@miguec04 no recomiendo usar la formula del SQL que expusistes, ya que el LIKE tarda más en procesarse porque tiene que mirar todos las filas a ver si encajan con el LIKE, en vez de ser simplemente... igual (=).
  #9 (permalink)  
Antiguo 02/09/2011, 19:42
Avatar de andresdzphp
Colaborador
 
Fecha de Ingreso: julio-2011
Ubicación: $this->Colombia;
Mensajes: 2.749
Antigüedad: 12 años, 9 meses
Puntos: 793
Respuesta: Login php

Cita:
Iniciado por mcun Ver Mensaje
sin duda, pero visto que el camarada esta aprendiendo no esta de mas darle un poquito mas que no es tanto es solo escapar los datos con la función mencionada.

Yo como vi ese detalle lo comente ya que por lo otro me parece que está resuelto ...
Bueno no cuesta nada dejar un ejemplo:

Código PHP:
Ver original
  1. $sql = sprintf("SELECT password, usuario FROM usuarios WHERE usuario='%s'",
  2.  
  3. $res = mysql_query($sql);
__________________
Si sabemos como leer e interpretar el manual será mucho más fácil aprender PHP. En lugar de confiar en ejemplos o copiar y pegar - PHP
  #10 (permalink)  
Antiguo 02/09/2011, 20:00
Avatar de mcun  
Fecha de Ingreso: octubre-2010
Ubicación: tras la pantalla
Mensajes: 466
Antigüedad: 13 años, 6 meses
Puntos: 55
Respuesta: Login php

si, disculpas se me paso el detalle que bueno que lo notaste ;)

Etiquetas: html, login, mysql, sql, formulario, usuarios
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

SíEste tema le ha gustado a 1 personas




La zona horaria es GMT -6. Ahora son las 01:52.