Foros del Web » Programando para Internet » PHP »

Problema en autentificacion de usuarios

Estas en el tema de Problema en autentificacion de usuarios en el foro de PHP en Foros del Web. Hola a todos tengo este problema lo q sucede es q en mi servidor local uso php4 y me mude a un hosting q trabaja ...
  #1 (permalink)  
Antiguo 05/02/2007, 13:16
 
Fecha de Ingreso: febrero-2007
Mensajes: 33
Antigüedad: 17 años, 2 meses
Puntos: 0
Problema en autentificacion de usuarios

Hola a todos tengo este problema lo q sucede es q en mi servidor local uso php4 y me mude a un hosting q trabaja con php5 y lo mas raro de todo es q en mi servidor local la web funciona a las mil maravillas y en el hosting q me mude no me funciona nada.

Tengo este codigo en el servidor local:

Código PHP:
<?
include("conexion.php");

//conecto con la base de datos
$conn mysql_connect("localhost","swa_usuarios","usuarios");
//selecciono la BBDD
mysql_select_db("swa_usuarios",$conn);

//Sentencia SQL para buscar un usuario con esos datos
$ssql "SELECT * FROM usuarios WHERE usuario='$usuario' and password='$password'";

//Ejecuto la sentencia
$rs mysql_query($ssql,$conn);

//vemos si el usuario y contraseña es váildo
//si la ejecución de la sentencia SQL nos da algún resultado
//es que si que existe esa conbinación usuario/contraseña
if (mysql_num_rows($rs)!=0){
    
//usuario y contraseña válidos
    //defino una sesion y guardo datos
    
session_start();
    
session_register("autentificado");
    
$autentificado "SI";
    
header ("Location: home.php");
}else {
    
//si no existe le mando otra vez a la portada
    
header("Location: index.php?errorusuario=si");
}
mysql_free_result($rs);
mysql_close($conn);
?>
Este me funciona en el servidor local pero no en el hosting q tiene php5 y me salen los siguientes errores.

Código:
Warning: mysql_num_rows(): supplied argument is not a valid MySQL result resource in /home/swa/public_html/extranet/login.php on line 18

Warning: Cannot modify header information - headers already sent by (output started at /home/swa/public_html/extranet/login.php:18) in /home/swa/public_html/extranet/login.php on line 27

Warning: mysql_free_result(): supplied argument is not a valid MySQL result resource in /home/swa/public_html/extranet/login.php on line 29
Muchas gracias espero me ayuden de verdad q lo necesito. :) :)
  #2 (permalink)  
Antiguo 05/02/2007, 13:26
Avatar de Nefertiter  
Fecha de Ingreso: enero-2003
Ubicación: Rosario
Mensajes: 1.316
Antigüedad: 21 años, 3 meses
Puntos: 9
Re: Problema en autentificacion de usuarios

esta seguro se logra la conexion a mysql?

de donde se toman los datos de usuarios y password?

fijate de cambiarlos por $_POST['usuario'] y $_POST['password']
  #3 (permalink)  
Antiguo 05/02/2007, 13:29
 
Fecha de Ingreso: febrero-2007
Mensajes: 33
Antigüedad: 17 años, 2 meses
Puntos: 0
Re: Problema en autentificacion de usuarios

Cita:
Iniciado por Nefertiter Ver Mensaje
esta seguro se logra la conexion a mysql?

de donde se toman los datos de usuarios y password?

fijate de cambiarlos por $_POST['usuario'] y $_POST['password']
hola la verdad no soy muy experto y pues quisiera saber donde pongo $_POST['usuario'] y $_POST['password'][/QUOTE] gracias
  #4 (permalink)  
Antiguo 06/02/2007, 18:07
 
Fecha de Ingreso: febrero-2007
Mensajes: 3
Antigüedad: 17 años, 2 meses
Puntos: 0
Re: Problema en autentificacion de usuarios

Segun tengo entendido, en PHP4 y anteriores, los datos obtenidos mediante un formulario se guardaban en una variable con el nombre tal cual (si era <input type="text" name="nombre">; la variable sería $nombre).

Pero en el 5, por seguridad, se guardan como $_POST['nombre'] (o $_GET['nombre'] si es method="GET")

donde ponerlo... supongo que puedes ponerlo como una variable, aunque personalmente me gusta mas la opcion de asignar unas variables con esos valores:
$nombre = $_POST['nombre'];

En cuanto al mysql_num_rows no se muy bien a que se debe el fallo, pero por si te sirve de algo, te pongo el que uso yo (que me ha funcionado bien)

Código PHP:
$consulta "SELECT * FROM usuarios WHERE nick = '$e_nick'";
$envio mysql_query$consulta$conexion);
if(
mysql_num_rows($envio)){
$Error[] = "nickreg";

Repito que no se en que radica el error, pero quizas tu si descubras algo ^^U (antes a mi me pasaba lo que a ti... y ya no, aunque desgraciadamente no se que hice).

Suerte y espero haberte sido de ayuda
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.
Tema Cerrado




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