Foros del Web » Programando para Internet » PHP »

Login de usuarios

Estas en el tema de Login de usuarios en el foro de PHP en Foros del Web. Hola tengo un problema con un login de usuario que quiero utilizar en mi web. He probado el codigo sin introducirlo en mi web, es ...
  #1 (permalink)  
Antiguo 20/05/2010, 12:33
 
Fecha de Ingreso: noviembre-2008
Mensajes: 75
Antigüedad: 15 años, 5 meses
Puntos: 0
Login de usuarios

Hola tengo un problema con un login de usuario que quiero utilizar en mi web. He probado el codigo sin introducirlo en mi web, es decir, creando unicamente una pagina hml con el formulario y funciona correctamente, pero al introducirlo en la web no funciona.
El codigo de ingreso.php es el siguiente:

<?php
$host="localhost"; // El nombre del host
$username="root"; // Nombre de usuario mysql
$password=""; // contraseña mysql
$db_name="test"; // base de datos
$tbl_name="usuarios"; // nombre de la tabla

//Conectamos con el servidor y seleccionamos la base de datos
mysql_connect("$host", "$username", "$password")or die("cannot connect");
mysql_select_db("$db_name")or die("cannot select DB");
//Cogemos los datos que nos llegan desde el formulario
$minombre=$_POST['minombre'];
$contraseña=$_POST['contraseña'];
// Unas pequeñas medidas de seguridad para proteger las bases de datos de posibles inyecciones
$minombre = stripslashes($minombre);
$contraseña = stripslashes($contraseña);
$minombre = mysql_real_escape_string($minombre);
$contraseña = mysql_real_escape_string($contraseña);

$sql="SELECT * FROM $tbl_name WHERE username='$minombre' and password='$contraseña'";
$result=mysql_query($sql);

// Contamos el numero de filas
$count=mysql_num_rows($result);
//Si el resultado marcado es $minombre y $contraseña,debería haber solo una fila
if($count==1){

//Registramos usuario y redireccionamos a exito.php
$_SESSION["minombre"]=$minombre;
$_SESSION["contraseña"]=$contraseña;
header("location:exito.php");
}
else {
header("location:formulario.html");
//echo "Nombre de usuario equivocado o contraseña";
}
?>

en el formulario al campo del usuario lo he llamado "minombre" y al password "contraseña".Y en el campo action="ingreso.php"

El problema es que siempre, aunque el usuario exista en la base de datos e introduzca los datos en el formulario correctamente, me vuelve siempre a la página del formulario.

Gracias
  #2 (permalink)  
Antiguo 20/05/2010, 12:57
Avatar de andres013  
Fecha de Ingreso: febrero-2007
Ubicación: Bogotá Colombia
Mensajes: 222
Antigüedad: 17 años, 1 mes
Puntos: 2
Respuesta: Login de usuarios

Hola,

Estás seguro q las variables campos que están llegando por post vienen cargadas?? esa podría ser una opción, lo otro es que hagas un echo de las variables contraseña y usuario antes de hacer el select a ver si van cargadas para mirar que puede ser.

Un saludo.

Ptta: Si puedes pon aqui el form q recibe los valores de las variables y que tiene el form.
__________________
Desarrollando Web: La guía para los desarrolladores web
http://www.desarrollandoweb.com
  #3 (permalink)  
Antiguo 20/05/2010, 13:24
 
Fecha de Ingreso: noviembre-2008
Mensajes: 75
Antigüedad: 15 años, 5 meses
Puntos: 0
Respuesta: Login de usuarios

Este es el codigo del formulario:

<form action="ingreso.php method="POST" >
<table width="364" height="57" border="0">
<tr>
<td width="146" class="style20"><div align="right">Usuario:</div></td>
<td width="4" class="style20">&nbsp;</td>
<td width="10" class="style20">&nbsp;</td>
<td colspan="2"><input name="minombre" type="text" size="30"></td>
</tr>
<tr>
<td class="style20"><div align="right">Contraseña:</div></td>
<td class="style20">&nbsp;</td>
<td class="style20">&nbsp;</td>
<td colspan="2"><input name="contraseña" type="password" id="password" size="30"></td>
</tr>
<tr>
<td colspan="5" class="style10"><div align="center">
<p><br>
<span class="style20">Por favor, introduzca su usuario y contrase&ntilde;a</span></p>
<p class="style12"><br>
</p>
</div></td>
</tr>
<tr>
<td colspan="3" class="style10"><div align="right" class="style13">
<input name="Submit" type="submit" value="Enviar">
</div></td>
<td width="37" class="style14">&nbsp;</td>
<td width="145" class="style10"><input name="Reset" type="reset" value="Cancelar"></td>
</tr>
</table>
</form>
  #4 (permalink)  
Antiguo 20/05/2010, 15:15
 
Fecha de Ingreso: febrero-2010
Ubicación: /home/México
Mensajes: 57
Antigüedad: 14 años, 2 meses
Puntos: 0
Respuesta: Login de usuarios

porque tienes esto?

Código:
<form action="ingreso.php method="POST" >
saludos
  #5 (permalink)  
Antiguo 21/05/2010, 03:11
 
Fecha de Ingreso: noviembre-2008
Mensajes: 75
Antigüedad: 15 años, 5 meses
Puntos: 0
Respuesta: Login de usuarios

Falta unas dobles comillas pero el action está asi para que el formulario se pase a ingreso.php.
  #6 (permalink)  
Antiguo 25/05/2010, 10:14
 
Fecha de Ingreso: noviembre-2008
Mensajes: 75
Antigüedad: 15 años, 5 meses
Puntos: 0
Respuesta: Login de usuarios

Ya he solucionado lo del login, ahora el problema que tengo es el siguiente: quiero que al loguearse un usuario correctamente, en la página a la que se le redirige le aparezca entre otras cosas un mensaje dandole la bienvenida por ejemplo: Bienvenido Juan, siendo Juan el nombre de usuario introducido en el formulario. El código es el mismo que en los mensajes anteriores.Gracias
  #7 (permalink)  
Antiguo 25/05/2010, 10:17
Avatar de RIVERMILLOS  
Fecha de Ingreso: marzo-2010
Mensajes: 1.336
Antigüedad: 14 años, 1 mes
Puntos: 15
Respuesta: Login de usuarios

Pues solo seria colocar

<?php
session_start();

echo "Bienvenido" .$_SESSION['usuario'];

?>

saludos

Última edición por RIVERMILLOS; 25/05/2010 a las 10:50
  #8 (permalink)  
Antiguo 25/05/2010, 10:27
 
Fecha de Ingreso: noviembre-2008
Mensajes: 75
Antigüedad: 15 años, 5 meses
Puntos: 0
Respuesta: Login de usuarios

Rivermillos así no se porque no me funciona, ya lo habia probado. Pero concretamente en mi caso cual seria exactamente lo que tendría que poner? esque yo no utilizo usuario.Gracias
  #9 (permalink)  
Antiguo 25/05/2010, 10:49
Avatar de RIVERMILLOS  
Fecha de Ingreso: marzo-2010
Mensajes: 1.336
Antigüedad: 14 años, 1 mes
Puntos: 15
Respuesta: Login de usuarios

Cita:
Iniciado por solymar Ver Mensaje
Rivermillos así no se porque no me funciona, ya lo habia probado. Pero concretamente en mi caso cual seria exactamente lo que tendría que poner? esque yo no utilizo usuario.Gracias

seria asi


echo "<h4>Bienvenido<h4>:".$_SESSION["minombre"];



obviamente tienes que darle antes de todo lo que hagas session_start();
y cuando haces la comprobacion en el login colocas despues de que guarde le nombre en $_SESSION["minombre"] colocas lo siguiente.

session_write_close();


saludos
  #10 (permalink)  
Antiguo 25/05/2010, 11:12
 
Fecha de Ingreso: noviembre-2008
Mensajes: 75
Antigüedad: 15 años, 5 meses
Puntos: 0
Respuesta: Login de usuarios

Todo solucionado, Gracias rivermillo. Por casualidad no sabrás como poner una imagen asociada a un usuario(guardada en la base de datos) y que se muestre también?Saludos
  #11 (permalink)  
Antiguo 25/05/2010, 11:15
Avatar de RIVERMILLOS  
Fecha de Ingreso: marzo-2010
Mensajes: 1.336
Antigüedad: 14 años, 1 mes
Puntos: 15
Respuesta: Login de usuarios

Tendrias que asociar un campo imagen donde iria la ruta de la imagen que quieres colocar y asignarsela a un img asi seria a groso modo.

saludos

Etiquetas: login, 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




La zona horaria es GMT -6. Ahora son las 08:32.