Foros del Web » Programando para Internet » PHP »

Problema con login en PHP

Estas en el tema de Problema con login en PHP en el foro de PHP en Foros del Web. Hola a todos! bueno he visitado bastante el foro y he obtenido bastante ayuda, ahora yo estoy tratando de aprender PHP solo, con manuales y ...
  #1 (permalink)  
Antiguo 28/10/2009, 11:21
 
Fecha de Ingreso: mayo-2009
Mensajes: 55
Antigüedad: 14 años, 11 meses
Puntos: 0
Problema con login en PHP

Hola a todos! bueno he visitado bastante el foro y he obtenido bastante ayuda, ahora yo estoy tratando de aprender PHP solo, con manuales y otras ayudas...
Bueno mi problema es el siguiente, estoy intentando hacer una pequeña pagina de logueo, he creado la BD con su tabla de usuario, he creado una carpeta de donde jalo la conexion a la BD, y un index.php donde intento hacer el logueo, por ejm tengo 2 usuarios: admin y cliente y lo que quiero hacer es que al loguear al admin lo envie por ejm a la pagina del admin y lo mismo con el cliente, a 2 paginas diferentes por asi decirlo, he hecho la codificacion, es simple creo, pero ahora tengo un problema que dice:

Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in C:\AppServ\www\html\autentificacion\verificar.php on line 14

$sql = "SELECT * FROM usuarios WHERE usuario = '$usuario'";
$rs = mysql_query($sql);
$data = mysql_fetch_array($rs);
$user = $data['usuario'];
$pass = $data['password'];

eso es parte del codigo donde me bota el error, explico rapido para que se entienda: en index.php mediante el metodo 'post' paso los valores a la pagina 'verificar.php' donde esta este codigo que muestro, claro al final hago que direccione segun lo que quiero como admin o como cliente pero es en esta parte donde se estanca el codigo... quisiera saber que es lo que pasa o en que me estoy equivocando!!! gracias por la ayuda! espero la tengan!
  #2 (permalink)  
Antiguo 28/10/2009, 11:24
Avatar de Fairy_Boy  
Fecha de Ingreso: octubre-2009
Ubicación: Kokiri Forest
Mensajes: 235
Antigüedad: 14 años, 6 meses
Puntos: 5
Respuesta: Problema con login en PHP

Revisa el codigo cuando haces la conexion a la BD, ese error sale generalmente por eso.
Saludos!
  #3 (permalink)  
Antiguo 28/10/2009, 11:24
 
Fecha de Ingreso: octubre-2009
Mensajes: 61
Antigüedad: 14 años, 6 meses
Puntos: 0
Respuesta: Problema con login en PHP

la Variable $usuario como la adquieres? tuvistes q haberla declarado antes

$usuario=$_POST['username'];
  #4 (permalink)  
Antiguo 28/10/2009, 11:27
 
Fecha de Ingreso: diciembre-2008
Mensajes: 805
Antigüedad: 15 años, 4 meses
Puntos: 20
Respuesta: Problema con login en PHP

los nombres de tabla y del campo son correctos???
  #5 (permalink)  
Antiguo 28/10/2009, 11:34
Avatar de urgido  
Fecha de Ingreso: febrero-2005
Mensajes: 2.351
Antigüedad: 19 años, 2 meses
Puntos: 25
Respuesta: Problema con login en PHP

$rs = mysql_query($sql); por $rs = mysql_query($sql) or die(mysql_error());
__________________
Hospedaje Web al mejor costo!
  #6 (permalink)  
Antiguo 28/10/2009, 11:58
 
Fecha de Ingreso: mayo-2009
Mensajes: 55
Antigüedad: 14 años, 11 meses
Puntos: 0
Respuesta: Problema con login en PHP

Para explicarme mejor, la tabla se llama 'usuarios'
los campos son: id_user | usuario | password

no creo que sea problema de los campos, como tmb me han respondido, sobre POST, si he declarado las variables:

$usuario = $_POST["user"];
$password = $_POST["pass"];

donde he verificado tambien que esten bien escritas desde los text que las mandan.

Creo que hasta ahi estoy bien.... ahora respecto a la conexion por ejemplo tengo 2 archivos de donde cojo la conexion:

conectdb.php:

<?php
$con = mysql_connect('localhost',$CFG->dbuser,$CFG->dbpass);

mysql_select_db($CFG->dbname,$con);
?>

y

parametros.php:

<?php
$CFG->dbtype = 'mysql';
$CFG->dbhost = 'localhost';
$CFG->dbname = 'misusuarios';
$CFG->dbuser = ''; // usuario root
$CFG->dbpass = ''; // contraseña de root

$CFG->wwwroot = 'direccion de donde esta alojado';
?>

Estos 2 archivos los copie como referenciandome para la conexion, estuve haciendo anteriormente un pequeño sistema que usa estos archivos de conexion y me funciono, claro que ahora lo adapte a mi BD. los llamo al principio de la pagina, po ejm en verificar.php que viene inmediamente despues de index.php (donde la envia el formulario), la verdad es que no tengo tanta nocion sobre esto de la conexion, pero anteriormente me funciono, supongo que en algo me debo estar equivocando. Gracias por las ayudas! y espero me puedan seguir ayudando a solucionar este inconveniente...
  #7 (permalink)  
Antiguo 28/10/2009, 12:02
Avatar de urgido  
Fecha de Ingreso: febrero-2005
Mensajes: 2.351
Antigüedad: 19 años, 2 meses
Puntos: 25
Respuesta: Problema con login en PHP

y que error te sale con la linea que te dije que cambiaras?
__________________
Hospedaje Web al mejor costo!
  #8 (permalink)  
Antiguo 28/10/2009, 12:05
Avatar de Fairy_Boy  
Fecha de Ingreso: octubre-2009
Ubicación: Kokiri Forest
Mensajes: 235
Antigüedad: 14 años, 6 meses
Puntos: 5
Respuesta: Problema con login en PHP

if (!isset($_SESSION)){
session_start();
//Establecer la conexion con la base de datos.
mysql_connect('localhost','root','')or die ('Ha fallado la conexión: '.mysql_error());
mysql_select_db('gestion_carpetas')or die ('Error al seleccionar la Base de Datos: '.mysql_error());
.
.
.
Intenta poniendo esto en uno de tus archivos, no es la mejor forma, ya que lo que haces tu esta bien, llamar la conexion.
pero nose porque razon en una de mis paginas (la que valida el usuario) me arrojaba el mismo error, corte por lo sano y puse los datos de mi conexion al principio de la pagina que valida.
y me funciono!
lo raro es que son exactamente los mismos datos :S
ojala te sirva de algo.
Saludos!
  #9 (permalink)  
Antiguo 28/10/2009, 12:13
 
Fecha de Ingreso: mayo-2009
Mensajes: 55
Antigüedad: 14 años, 11 meses
Puntos: 0
Respuesta: Problema con login en PHP

justo sali xq es hra del almuerzo xD.

urgido acabo de cambiar lo que me dijiste y salio:

No database selected

Pero que raro en los parametros que mencione antes, le coloque el nombre de la BD 'misusuarios'

$CFG->dbname = 'misusuarios';

Entonces a que se debe que salga o es que hay algo detras de todos esto??? me parece raro y gracias por la ayuda
  #10 (permalink)  
Antiguo 28/10/2009, 12:16
Avatar de urgido  
Fecha de Ingreso: febrero-2005
Mensajes: 2.351
Antigüedad: 19 años, 2 meses
Puntos: 25
Respuesta: Problema con login en PHP

dices que tu tabla se llama "misusuarios" y en tu consulta tienes "usuarios"

$sql = "SELECT * FROM usuarios WHERE usuario = '$usuario'";


entonces? cual es?
__________________
Hospedaje Web al mejor costo!
  #11 (permalink)  
Antiguo 28/10/2009, 12:23
 
Fecha de Ingreso: mayo-2009
Mensajes: 55
Antigüedad: 14 años, 11 meses
Puntos: 0
Respuesta: Problema con login en PHP

no no, al principio tuve ese error es asi:

base de datos: misusuarios
tabla: usuarios

creo que debe ser en alguno de los archivos de conexion, pero si te das cuenta ahi tngo declarada el nombre de la base de datos:

parametros.php:

<?php
$CFG->dbtype = 'mysql';
$CFG->dbhost = 'localhost';
$CFG->dbname = 'misusuarios'; --> esta es mi BD
$CFG->dbuser = ''; // usuario root
$CFG->dbpass = ''; // contraseña de root

$CFG->wwwroot = 'direccion de donde esta alojado';
?>

La verdad es q no pense q fuera tan tesioso... pero gracias x las ayudas a todos! espero poder encontrar cual es la falla!! se aceptan comentarios!! jej
  #12 (permalink)  
Antiguo 28/10/2009, 12:28
Avatar de urgido  
Fecha de Ingreso: febrero-2005
Mensajes: 2.351
Antigüedad: 19 años, 2 meses
Puntos: 25
Respuesta: Problema con login en PHP

mysql_select_db($CFG->dbname,$con) or die(mysql_error());


has intentado con poner mysql_select_db('misusuarios',$con) or die(mysql_error());
__________________
Hospedaje Web al mejor costo!
  #13 (permalink)  
Antiguo 28/10/2009, 13:00
 
Fecha de Ingreso: mayo-2009
Mensajes: 55
Antigüedad: 14 años, 11 meses
Puntos: 0
Respuesta: Problema con login en PHP

Estoy intentando ver cualkier error posible, pero, la vdd es q no se donde radica tal error, al colocar lo que m dijiste urgido me sale lo siguiente:

Access denied for user ''@'localhost' to database 'misusuarios'

bueno para ver si en algo incurre:

index.php --> donde mediante POST envio los datos ingresados de user y pass
verificar.php --> es aqui donde hago la verificacion y de pasar me deberia enviar a la pagina ya sea de admin o de cliente

al iniciar verificar.php pongo lo siguiente:

<?php
session_start();
require_once('conexion/conectdb.php');
include("conexion/parametrosdb.php");
.
.
.
?>

y luego lo demas que ya han visto anteriormente, es aqui donde radica el error? bueno la cosa es q al parecer no conecta con la BD, gracias x el interes y las respuestas
  #14 (permalink)  
Antiguo 28/10/2009, 13:03
Avatar de urgido  
Fecha de Ingreso: febrero-2005
Mensajes: 2.351
Antigüedad: 19 años, 2 meses
Puntos: 25
Respuesta: Problema con login en PHP

Access denied for user ''@'localhost' to database 'misusuarios'

hay de dos o el password/usuario hacia la db esta mal o la base no existe asi que checa esos datos.
__________________
Hospedaje Web al mejor costo!
  #15 (permalink)  
Antiguo 28/10/2009, 13:04
Avatar de urgido  
Fecha de Ingreso: febrero-2005
Mensajes: 2.351
Antigüedad: 19 años, 2 meses
Puntos: 25
Respuesta: Problema con login en PHP

ahm checa lo de arriba y checate que al consultar no manda al nombre de usuario creo que ya sé que anda mal..

primero debe ir lo siguiente:

<?php
$CFG->dbtype = 'mysql';
$CFG->dbhost = 'localhost';
$CFG->dbname = 'misusuarios';
$CFG->dbuser = ''; // usuario root
$CFG->dbpass = ''; // contraseña de root

$CFG->wwwroot = 'direccion de donde esta alojado';
?>


Y ABAJO:
<?php
$con = mysql_connect('localhost',$CFG->dbuser,$CFG->dbpass);

mysql_select_db($CFG->dbname,$con);
?>


si usas include, hazlo pero siguiendo el mismo formato. Saludos
__________________
Hospedaje Web al mejor costo!
  #16 (permalink)  
Antiguo 28/10/2009, 13:29
 
Fecha de Ingreso: mayo-2009
Mensajes: 55
Antigüedad: 14 años, 11 meses
Puntos: 0
Respuesta: Problema con login en PHP

Por fin!! Gracias "urgido" era tal y como decias, al usar el include inverti el orden, y ahora si engancho a donde queria, gracias por la ayuda.... al parecer no leia los parametros que le habia asignado, sino que la lectura la hacia despues de haber pasado, bueno creo q fue asi.

Como lei una vez... a veces los detalles mas obvios siempre lo dejamos al final, y al parecer esto fue lo que paso jeje

Mil gracias por la ayuda, seguire avanzando y añadiendo cosas
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 21:56.