Ver Mensaje Individual
  #1 (permalink)  
Antiguo 05/01/2008, 11:07
erudito31
 
Fecha de Ingreso: noviembre-2007
Mensajes: 33
Antigüedad: 16 años, 5 meses
Puntos: 0
Pregunta error en sesiones - 2

Estimad@s informatic@s:

Con mis pocos conocimientos en php-mysql vengo trabajando en un pequeño proyecto que para mi ha sido un mundo. Tengo que agradecerles a muchos de Ustedes que me han brindado su tiempo y conocimientos para haber avanzado hasta aqui. mil gracias de todo corazón.

Mas, una vez más, debo recurrir a ustedes para que me brinden un poco de ayuda.

El proyecto es con una bd de clientes que que deben loguearse y en el archivo verificación que se encarga de la misma, se debe hacer una segunda verificación contra un campo llamado 'tbusiness' que almacena una de tres palabras (mayorista, minorista o Venezuela), de aqui el redireccionamiento que debe realizar hacia la carpeta dependiendo de la palabra almacenada en tbusiness. (hasta aqui todo bien, perfecto).

Como pueden imaginarse, si hay un redireccionamiento hacia carpetas específicas, no se debe poder llegar a otra carpeta o ir directamente a alguna página sin pasar por login-passwd. (aqui mi problema). He creado un archivo seguridad.inc.php que abajo describo, para que sea ese archivo el que verifique si se ha heco login o no. de no haberse hecho, debe redirigir hacia la pagina de login y en su defecto, debe ir a la carpeta de acuerdo a la verificación que hace el archivo verificar.php
No conozco mucho del tema de php, pero según he leido es preferible trabajar sin cookies para evitar el dilema que todos deben haber experimentado.

ERRORES AL TRATAR DE INGRESAR DIRECTAMENTE A localhost/mayoristas/index.php
error en Firefox:
Firefox ha detectado que el servidor está redirigiendo la solicitud a esta dirección de una manera en la que nunca terminará.
Este problema está causado normalmente por desactivar o rechazar las cookies.

error en ie7.0:
me dice error en la página pero la carga y no la redirecciona hacia login-passwd

la estructura de directorios es como a continuacion detallo:
localhost/mayoristas
localhost/minoristas
localhost/inc
localhost/login.php
localhost/verificar.php

Espero puedan brindarme su ayuda, les estaré eternamente agradecido. Feliz Año 2008 a todos y que reciban mucha Paz, Amor y Prosperidad.


VERIFICAR.PHP
**********************************
<?php
//VERIFICAR EL FORMULARIO DE LOGIN Y PASSWD.

session_start();
require_once("inc/configuracion.inc.php");
require_once("inc/funciones.inc.php");
$email = $_POST["txtemail"];
$clave = md5($_POST["txtclave"]);
$SQL = "select * from tblreseller where coemail = '$email' and passwd = '$clave' and autorizada = 1";
$cnn = cnnmysql(USER,CLAVE,SERVIDOR,DB);
if($cnn){
$resultado = mysqlquery($SQL,$cnn);
$num = mysql_num_rows($resultado);
if($num > 0){


session_register('idsesion');
$_SESSION["idsesion"]= session_id();

$rows = mysql_fetch_array($resultado, MYSQL_ASSOC);

if($rows['tbusiness'] == 'Wholesale'){
print "<script>window.open('/mayoristas/index.php','_self');</script>";
} elseif ($rows['tbusiness'] == 'Retail'){
print "<script>window.open('/minoristas/index.php','_self');</script>";
}else {
print "<script>window.open('/venezuela/index.php','_self');</script>";
}

************************************


SEGURIDAD.INC.PHP
************************************
<?php
session_start();
if(!session_is_registered("idsesion")){
header("Location:index.php");
exit;
}else{
if(session_id()!= $_SESSION["idsesion"]){
header("Location:../login.php");
exit;
}
} //fin del else
?>
*************************************