Foros del Web » Programando para Internet » PHP »

reconocimiento de usuarios

Estas en el tema de reconocimiento de usuarios en el foro de PHP en Foros del Web. Hola gente.... pues estoy poniendo en práctica el tutorial de "registro y reconocimiento de usuarios" que hay en maestrosdelweb.com, concretamente aqui , aunque creo que ...
  #1 (permalink)  
Antiguo 10/02/2003, 08:50
Avatar de kaiowas  
Fecha de Ingreso: septiembre-2001
Ubicación: el averno...
Mensajes: 531
Antigüedad: 23 años, 2 meses
Puntos: 0
reconocimiento de usuarios

Hola gente....

pues estoy poniendo en práctica el tutorial de "registro y reconocimiento de usuarios" que hay en maestrosdelweb.com, concretamente aqui, aunque creo que muchos de vosotros ya os lo habreis paseado.... bien, el asunto es que no me acaba de rular bien, y no estoy seguro de si es porque me falta algo en mi server o es que está anticuado y hay cosas que en php 4.3 ya no son soportadas.

Me falla a partir de login.php, archivo que se encarga de verificar si el usuario que intenta acceder tiene las cookies en su ordenador, si sí le deja, sino le tira, pero no me funciona. El caso es que me he metido de nuevo en maestros del web y en miscodigos.com y los comentarios están desacivados. ahí va el archivo:

Código PHP:
<?php
$loginCorrecto 
false
$idUsuarioL
$nickUsuarioL
$emailUsuarioL
$nombreUsuarioL

if(isset(
$HTTP_COOKIE_VARS["usNick"]) && isset($HTTP_COOKIE_VARS["usPass"])) 

$result mysql_query("SELECT * FROM usuarios WHERE nick='".$HTTP_COOKIE_VARS["usNick"]."' AND password='".$HTTP_COOKIE_VARS["usPass"]."'"); 

if(
$row mysql_fetch_array($result)) 

setcookie("usNick",$HTTP_COOKIE_VARS["usNick"],time()+7776000); 
setcookie("usPass",$HTTP_COOKIE_VARS["usPass"],time()+7776000); 
$loginCorrecto true
$idUsuarioL $row["id"]; 
$nickUsuarioL $row["nick"]; 
$emailUsuarioL $row["email"]; 
$nombreUsuarioL $row["nombre"]; 

else 

//Destruimos las cookies. 
setcookie("usNick","x",time()-3600); 
setcookie("usPass","x",time()-3600); 

mysql_free_result($result); 

?>
garcias
  #2 (permalink)  
Antiguo 10/02/2003, 08:56
Avatar de kaiowas  
Fecha de Ingreso: septiembre-2001
Ubicación: el averno...
Mensajes: 531
Antigüedad: 23 años, 2 meses
Puntos: 0
login.php genera estos errores, además de no dejarme entrar luego:

Warning: mysql_query() [function.mysql-query]: Access denied for user: 'jejeje@localhost' (Using password: NO) in /Library/WebServer/Documents/usuarios/login.php on line 3

Warning: mysql_query() [function.mysql-query]: A link to the server could not be established in /Library/WebServer/Documents/usuarios/login.php on line 3

Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in /Library/WebServer/Documents/usuarios/login.php on line 4

Warning: Cannot modify header information - headers already sent by (output started at /Library/WebServer/Documents/usuarios/login.php:3) in /Library/WebServer/Documents/usuarios/login.php on line 5

Warning: Cannot modify header information - headers already sent by (output started at /Library/WebServer/Documents/usuarios/login.php:3) in /Library/WebServer/Documents/usuarios/login.php on line 5

Warning: mysql_free_result(): supplied argument is not a valid MySQL result resource in /Library/WebServer/Documents/usuarios/login.php on line 5
  #3 (permalink)  
Antiguo 10/02/2003, 09:23
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 22 años, 10 meses
Puntos: 129
Date cuenta de un detalle:

Cita:
//AQUI CONEXION O include() DE ARCHIVO DE CONEXION CON BASE DE DATOS
El código está incompleto o se asume q esa parte la haces tu y debes saber hacerlo ..

Te hace falta los mysql_connect() y .. mysql_select_db() ...

Te puedes quejar aquí:
(son los comentarios de ese tutorial)
http://www.forosdelweb.com/showthrea...hreadid=112142

hay un usuario q se keja de eso .. Ya puestos sigue kejandote que no cuesta nada poner esas dos funcioncitas para que el ejemplo tutorial quede funcional (sobre todo para los q no tienen constumbre de PHP y BD) .. y de paso dices lo q falta para el próximo q venga ..

Un saludo,
  #4 (permalink)  
Antiguo 10/02/2003, 10:06
Avatar de kaiowas  
Fecha de Ingreso: septiembre-2001
Ubicación: el averno...
Mensajes: 531
Antigüedad: 23 años, 2 meses
Puntos: 0
Dr. Cluster.... te cuento:

el tal login.php verifica las cookies, si están te deja, sino te tira, ok, el asunto es que despues ese archivo va a modo de include en la página que quieras restringir, de este modo, restringida.php sería así, segun el turorial:

Código PHP:
<?php

include("conex.php");

include(
"login.php"); 

if(
$loginCorrecto

echo 
"Aqui el contenido solo para usuarios registrados"

else 

echo 
"El sistema no lo ha identificado, solo los usuarios registrados tienen acceso a esta area"

?>
de manera que es la tal restringida.php la que realiza la conexión a la BD. Aun así pillo y realizo la conexión en login.php quitandola en restringida.php, pero sigo con exactamente los mismos fallos...... :(


Me fató describir que conex.php contiene lo siguiente:
Código PHP:
<?php
function Conectarse()
{
    if (!(
$link=mysql_connect("localhost","usuaruio_de_mysql","password_y_tal")))
    {
        echo 
"Error conectando a la base de datos.";
        exit();
    }
    if (!
mysql_select_db("base_de_datos",$link))
    {
        echo 
"Error seleccionando la base de datos.";
        exit();
    }
    return 
$link;
}
?>

Última edición por kaiowas; 10/02/2003 a las 10:08
  #5 (permalink)  
Antiguo 10/02/2003, 10:36
Avatar de jpogsistem  
Fecha de Ingreso: diciembre-2001
Mensajes: 2.405
Antigüedad: 22 años, 11 meses
Puntos: 4
Solo pasaba por aquí y queria dejarles este link que esta muy interesante sobre lo que habla este mensaje.....saludos


http://www.miscodigos.com/JLMCodigos/articulo.php?id=6
  #6 (permalink)  
Antiguo 10/02/2003, 10:41
Avatar de kaiowas  
Fecha de Ingreso: septiembre-2001
Ubicación: el averno...
Mensajes: 531
Antigüedad: 23 años, 2 meses
Puntos: 0
bueno si, este ultimo link es el mismo que de donde yo lo saqué, correcto. pero...


bueno, gracias......
  #7 (permalink)  
Antiguo 10/02/2003, 11:15
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 22 años, 10 meses
Puntos: 129
La función q usas para conectarte es correcta .. pero la asignas a $link .. y lo devuelves en return $llink ..

Así como está .. deberias usar en las conexiones el $link previo hacer algo tipo:

$link=Concectarse();
msyql_query("consultaSQL",$link);

Si no quieres complicarte usa simplemente:

Código PHP:
if (!mysql_connect("localhost","usuaruio_de_mysql","password_y_tal"))
    {
        echo 
"Error conectando a la base de datos.";
        exit();
    }
    if (!
mysql_select_db("base_de_datos"))
    {
        echo 
"Error seleccionando la base de datos.";
        exit();
    } 
Eso como un include() o ahí mismo incrustado ..

Lo que te vengo a decir con esto es q ese código en particular ASUME que el link de conexión está hecho y es GLOBAL .. Ten cuidado con los ambitos de variables ...

Un saludo,

Me había dejado el $link n mysql_select_db q si no lo usaba antes . ahi no corespondia.

Última edición por Cluster; 10/02/2003 a las 13:13
  #8 (permalink)  
Antiguo 10/02/2003, 12:52
Avatar de MSDark  
Fecha de Ingreso: noviembre-2002
Ubicación: Talca VII región
Mensajes: 337
Antigüedad: 22 años
Puntos: 1
Pues haslo mas facil lo de la conexion


Código PHP:
$conex=mysql_connect("localhost","user","pass");
mysql_select_db("tu_bd",$conex); 
Al menos asi lo hago yo y cuendo utilize ese ejemplo de gestion de usuarios me funcionaba.

Saludos
__________________
DelirioLinux.. Software Libre y tecnología.. php también..
Saludos :arriba:
Usuario Linux #198486 y Ubuntu #12791
Gutsy Gibbon
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 14:08.