Comunidad de diseño web y desarrollo en internet online

ayudA CON SESIONES

Citar            
MensajeEscrito el 21 Feb 2007 06:07 pm
saludos tengo problemas con el manejo de sesiones
espero que me puedan ayudar ya que cuando lo subi al servidor no funciono mientras que en el localhost no presento problemas. ahora estoy tratando de verificar las sesiones a travz de los datos de los $_post


<?php
require('CreaConexion.inc');
$usuario=$_POST['usuario'];
$clave=$_POST['clave'];


$conexion->connect('Localhost','nobody','pass')
or die('Error conectando con el servidor de base de datos');
$conexion->select_db('mi_db')
or die('Error al seleccionar la base de datos');
$query = 'SELECT username, password, id_cliente, razon, ultima_visita
FROM clientes
WHERE username=\'' . addslashes($usuario) . '\'';

$identificacion = $conexion->query($query)
or die('Error obtenidendo datos de la BD');


$num_filas = $conexion->num_rows($identificacion);
if ($num_filas == 1) {
$fila = $conexion->fetch_array($identificacion);

$id_clave = $fila ['password'];
$nombre = $fila['id_cliente'];
$ultima_visita = $fila['ultima_visita'];
$razon = $fila['razon'];
$priv = "user";

if ($clave == $id_clave) {
// Si coincide el usuario y la clave
// Almacenamos la fecha
$query = 'UPDATE clientes
SET ultima_visita=\'' . date('d/m/Y') .
"' WHERE username='$usuario'";
$conexion->query($query)
or die('Error actualizando la fecha en la BD');

// Redireccionamos a la siguiente página

header("Location: repropi.php");

// Y guardamos las variables de sesión
session_register('usuario');
session_register('clave');
session_register('razon');
session_register('ultima_visita');
session_register('priv');
}
}


echo '<title>ERROR EN LOGIN</title>';

echo '<center><h2>';
if ($num_filas == 1) {
echo "Error, usuario '$usuario' desconocido";
} else {
echo 'Error, clave incorrecta';
}
echo '</h2><br>';

echo '<a href="index.php">Volver</a></center>';


?>
<body bgcolor="#CCCCCC">
:crap: :crap:

Por macverick

5 de clabLevel



Genero:Masculino  

firefox
Citar            
MensajeEscrito el 22 Feb 2007 01:47 pm
Hola

Lo q pasa es q estas usando variables globales q en localhost las tenes habilitadas y en el servidor no.

La solucion es en la primer linea (en todos los archivos q uses sesiones) poner

Código :

session_start()

y luego utiliza el vector global $_SESSION para mantenar las variables y no session_register

Código :

$_SESSION["miVariable"] = "hola";

echo $_SESSION["miVariable"];


Espero q te sirva

Saludos!

Por alfathenus

833 de clabLevel

5 tutoriales

 

buenos aires || Argentina

firefox
Citar            
MensajeEscrito el 22 Feb 2007 03:24 pm
gracias , por la ayuda
de esta forma fue como deje las variables
$_SESSION["usuario"]="usuario";
echo $_SESSION["usuario"];


pero aun asi el problema persiste ya que ahora cualquiera puede ingresar

Por macverick

5 de clabLevel



Genero:Masculino  

firefox
Citar            
MensajeEscrito el 23 Feb 2007 12:26 am
Hola

Eso ya no es problema de las sesiones, sino en como armaste la arquitectura de seguridad de tu aplicacion... comenta un poco como la implementaste a ver si te podemos dar una mano.

Por alfathenus

833 de clabLevel

5 tutoriales

 

buenos aires || Argentina

firefox
Citar            
MensajeEscrito el 23 Feb 2007 01:30 pm

macverick escribió:


$_SESSION["usuario"]="usuario";
echo $_SESSION["usuario"];


Pues según lo que veo en tu codigo estas dando a la session el valor usuario, mas no el valor que tiene la variable usuario.

Es decir, si imprimes o muestras la SESSION

Código :

echo $_SESSION[usuario];


Te arrojaria esto:

Código :

 usuario


Ya que, como te dije, el valor que esta guardando es la palabra usuario y no el valor que contiene dicha variable(usuario).

Creo que la cosa debia quedar asi:

Código :

$_SESSION["usuario"]="$usuario";


Ahi ya te guardaria el valor que contiene la variable $usuario y no cualquiera podria ingresar...

^^
Saludos...

Por Jatrix13

Claber

1157 de clabLevel

3 tutoriales

Genero:Masculino  

Villavicencio, Colombia

firefox
Citar            
MensajeEscrito el 23 Feb 2007 02:52 pm
gracias a todos por la ayuda he corrigo los errores , pero aun asi no he podido validar la sesiones debido a el auth.php no valida el repropi.php (donde deriva ) entra cualquiera y este asu vez no ingresa los datos a la base de datos, lo cual encuentro mas extraño es que hace la insercion pero en blanco en la bd

gracias a los que me han ayudado

Por macverick

5 de clabLevel



Genero:Masculino  

firefox
Citar            
MensajeEscrito el 23 Feb 2007 03:01 pm
podrias explicarte mejor, en cuanto a que es lo que te falla y que es lo que te falta, la verdad tu ultimo post no lo entendi U_U

Por Jatrix13

Claber

1157 de clabLevel

3 tutoriales

Genero:Masculino  

Villavicencio, Colombia

firefox
Citar            
MensajeEscrito el 23 Feb 2007 05:46 pm
jatrix gracias por la ayuda

la estructura de la pagina es la siguiente laz_izq.php es donde los usuarios se logean desde aqui en forma interna pasa por el auth.php el cual tiene incorporado la coneccion a la base de datos y las consultas a la bd aqui es donde se debria producir la validacion de usuarios en que caso de ser correcta este te envia a la pagina repropi.php la cual es donde se pueden ingresar datos para publicar propiedades y caso contrario te envia a la pag login.php donde existe la posibilidad de registrase como usuario y o intentar nuevamente el ingreso .

cuales son los problemas :
en el menu publicar propiedades le haces click y ingresas (lo cual no deberia suceder)
en el usuario registrado no nuestra los datos de quien es la sesion
en publicar propiedas ingresa datos vacios a la db
en buscar tampoco lo hace no muestra




puedes chekar la pagina www.micasaonline.cl

dejo mi mail [email protected]


p.d esta pagina ya estaba hecha el programador simplente se fue y no la termino y yo estoy tratando de terminarla

de antemano gracias a todos

Por macverick

5 de clabLevel



Genero:Masculino  

firefox
Citar            
MensajeEscrito el 23 Feb 2007 06:53 pm
eee, pues a ver, que haria YO? simple, creo una session en el script de repropi.php una session que se llamaria ayuda, por que basicamente seria eso, una session de ayuda, para que ella sea quien de los permisos necesarios para acceder a la pagina que solo pueden ingresar los usuarios registrados.

Obviamente esta session va el el script de login o laz_izq, para q? para que si el usuario y la contraseña coinciden con lo que hay en la bd, pues entonces la ayuda se active y se guarde un "1", despues de esto se envia a la pagina repropi.php donde allí antes de mostrar el contenido va a preguntar si la session ayuda es = 0, si es asi pues lo envio de nuevo al login o a una página de error, pero si no pues ya estas en repropi.php.

Si no coincide el usuario y/o la contraseña, pues la session ayuda sera = 0 y obviamente en repropi.php se le negara el acceso...

Creo que eso es todo lo que haria, de esa manera, no solo verifico el usuario si no que evito que entren a repropi.php por medio del historial.

Saludos

Por Jatrix13

Claber

1157 de clabLevel

3 tutoriales

Genero:Masculino  

Villavicencio, Colombia

firefox

 

Cristalab BabyBlue v4 + V4 © 2011 Cristalab
Powered by ClabEngines v4, HTML5, love and ponies.