Foros del Web » Programando para Internet » PHP »

Al pasar aplicación al servidor

Estas en el tema de Al pasar aplicación al servidor en el foro de PHP en Foros del Web. Hola a todos! Tengo el siguiente problema. Yo tengo una aplicación que para entrar a una pagina el usuario debe ingresar una clave. Cuando yo ...
  #1 (permalink)  
Antiguo 01/08/2008, 09:28
 
Fecha de Ingreso: febrero-2006
Mensajes: 42
Antigüedad: 18 años, 2 meses
Puntos: 0
Al pasar aplicación al servidor

Hola a todos!

Tengo el siguiente problema.

Yo tengo una aplicación que para entrar a una pagina el usuario debe ingresar una clave.

Cuando yo pruebo esto en mi maquina funciona bien. Pero cuando lo paso al servidor, se pasa a la pagina siguiente asi el campo de clave este vacio, es decir no esta haciendo la validación correcta.

Espero me sepan ayudar

Saludos
__________________
Somos lo que nos proponemos...Cuenta con la ayuda de un ser supremo para lograrlo.
  #2 (permalink)  
Antiguo 01/08/2008, 10:08
Avatar de enlinea777  
Fecha de Ingreso: mayo-2008
Ubicación: frente al pc
Mensajes: 1.830
Antigüedad: 15 años, 11 meses
Puntos: 127
Respuesta: Al pasar aplicación al servidor

podrias poner tu codigo porfavor eso es lo que estamal.
  #3 (permalink)  
Antiguo 01/08/2008, 13:15
 
Fecha de Ingreso: febrero-2006
Mensajes: 42
Antigüedad: 18 años, 2 meses
Puntos: 0
Respuesta: Al pasar aplicación al servidor

- Tengo una variable de session con un contador, cuando una persona introduce su clave y logra pasar a la otra pagina ese contador se me va a incrementar en 1.

- Si es igual a uno, quiere decir que es la primera vez que la persona entra por lo tanto se hace la verificacion de que el usuario y el password exista.


if ($_SESSION['contador']==1) {

$query_user="select * from tbl_user_ncm where IDE_USER_NCM='{$_POST['txt_user']}' and PASS_USER_NCM='{$_POST['txt_pass']}'";
$resultado_user= mysql_query($query_user,$link);
$total_user= mysql_num_rows($resultado_user);

-Si el usuario si existe le va a mostrar el formulario y con todos los controles

if ($total_user!=0){

Aqui me muestra el form con todos los controles de list-menu.

- En caso de que el usuario y el password no existan en la bd le muestra un alerta, lo envía a la pagina del login de nuevo y reduce en 1 el contador

}else{
--$_SESSION['contador'];?>
<script language='JavaScript'>alert("Please insert your user and password again")</script>
<script language='JavaScript'>javascript:location.href='lo gin.php'</script>
<?php exit;
}

- En caso de que el contador sea mayor a 1, indica que ya no e s la primera vez que el usuario entra por lo tanto lo deja ver su formulario.

}elseif ($_SESSION['contador']>1){?>
Aqui me muetsra en formulario

<?php }?>
__________________
Somos lo que nos proponemos...Cuenta con la ayuda de un ser supremo para lograrlo.
  #4 (permalink)  
Antiguo 04/08/2008, 08:27
 
Fecha de Ingreso: febrero-2006
Mensajes: 42
Antigüedad: 18 años, 2 meses
Puntos: 0
Respuesta: Al pasar aplicación al servidor

Hice un cambio cree una pagina de verificaciones primero y luego e sque me llama a la pagina donde me muetsra el formulario pero sigue igual, este es el código.

Pero de igual forma, en el servidor no me esta haciendo la validación me pasa de una a la pagina con el formulario y no debería si el usuario y el password estan vacíos no me debería dejar pasar a esa pagina.

<?php
//Se establece la session
session_start();
session_register('user');
session_register('contador');
++$_SESSION['contador'];

include ("conection.php");
ini_set('max_execution_time', 3600);

//Si es la primera vez que ingresa el usuario
if ($_SESSION['contador']==1) {
//Se verifica el usuario y password
$query_user="select * from tbl_user_ncm where IDE_USER_NCM='{$_POST['txt_user']}' and PASS_USER_NCM='{$_POST['txt_pass']}'";
$resultado_user= mysql_query($query_user,$link);
$total_user= mysql_num_rows($resultado_user);
//Si el usuario y passrod estan correctos va a ver la pagina completa
if ($total_user!=0){
//Se asigna valor a la variable session usuario
$_SESSION['user']=$_POST['txt_user'];?>
<script language='JavaScript'>javascript:location.href="me nuppal.php"</script>
<?php exit;
//Si el usuario y contraseña no son validos
}else{
//Se resta el contador, muestra mensaje de invalido y va a la pagina de login
--$_SESSION['contador'];?>
<script language='JavaScript'>alert("Please insert your user and password again")</script>
<script language='JavaScript'>javascript:location.href='lo gin.php'</script>
<?php exit;
}
//Si ya el usuario a iniciado session y ya entro a esta página puede entrar a la de menuppal
}elseif ($_SESSION['contador']>1){?>

<script language='JavaScript'>javascript:location.href="me nuppal.php"</script>
<?php exit;
}
mysql_close($link);?>
__________________
Somos lo que nos proponemos...Cuenta con la ayuda de un ser supremo para lograrlo.
  #5 (permalink)  
Antiguo 04/08/2008, 09:36
Avatar de Carlojas  
Fecha de Ingreso: junio-2007
Ubicación: Shikasta
Mensajes: 1.272
Antigüedad: 16 años, 10 meses
Puntos: 49
Respuesta: Al pasar aplicación al servidor

Que tal Dianinha, para controlar el paso de tus variables del formulario al script puedes utilizar dos funciones de PHP como son isset() que verifica que una variable haya sido definida , y tambien empty() que verifica que una variable contenga o no un valor dependiendo de como plantees la condición, en cuanto a tu código prueba esta modificación:
Código PHP:
<?php
//Si es la primera vez que ingresa el usuario
if ($_SESSION['contador'] == 1) {
$usuario $_POST['txt_user'];
$password  $_POST['txt_pass'];
//Se verifica el usuario y password
$query_user "select * from tbl_user_ncm where IDE_USER_NCM = '$usuario' and PASS_USER_NCM = '$password'";
$resultado_user mysql_query($query_user,$link) or die("Error en consulta $query_user:".mysql_error() );
$total_user mysql_num_rows($resultado_user);
//Si el usuario y passrod estan correctos va a ver la pagina completa
if ($total_user != 0){
//Se asigna valor a la variable session usuario
$_SESSION['user'] = $usuario;?>

Saludos.
  #6 (permalink)  
Antiguo 05/08/2008, 08:04
 
Fecha de Ingreso: febrero-2006
Mensajes: 42
Antigüedad: 18 años, 2 meses
Puntos: 0
Respuesta: Al pasar aplicación al servidor

Hola Carlojas, intenté los cambios que me sugeriste pero nada, sigue haciendo lo mismo, yo creo que el problema esta en la variable de session contador, pareciera que lo incrementara más de lo normal y no se esta cumpliendo lo que contador ==1

Código PHP:
<?php 
//Se establece la session
session_start();
session_register('user'); 
session_register('contador');
++
$_SESSION['contador'];
include (
"conection.php");
ini_set('max_execution_time'3600); 

//Si es la primera vez que ingresa el usuario
if ($_SESSION['contador']==1) {
    
//Se verifica el usuario y password
    
$usuario $_POST['txt_user']; 
    
$password  $_POST['txt_pass'];
    
    
$query_user="select * from tbl_user_ncm where IDE_USER_NCM='$usuario' and PASS_USER_NCM = '$password'"
    
$resultado_usermysql_query($query_user,$link) or die("Error en consulta $query_user:".mysql_error() ); 
    
$total_usermysql_num_rows($resultado_user);
    
//Si el usuario y password están correctos va a ver la página completa
    
if ($total_user!=0){
        
//Se asigna valor a la variable session usuario
        
$_SESSION['user'] = $usuario;?>
        <!--Se Pasa a la pagina del menu-->
        <script language='JavaScript'>javascript:location.href="menuppal.php"</script>
    <?php exit;
    
//Si el usuario y contraseña no son válidos
    
}else{ 
        
//Se resta el contador, muestra mensaje de inválido y va a la página de login
        
--$_SESSION['contador'];?>
        <script language='JavaScript'>alert("User or Password has not been found")</script>
        <script language='JavaScript'>javascript:location.href='login.php'</script>
    <?php exit;
    }
//Si ya el usuario a iniciado sessión y ya entró a esta página puede entrar a la de menuppal
}

if (
$_SESSION['contador']>1){?>
        
        <script language='JavaScript'>javascript:location.href="menuppal.php"</script>
        <?php exit;
}
mysql_close($link);?>
__________________
Somos lo que nos proponemos...Cuenta con la ayuda de un ser supremo para lograrlo.
  #7 (permalink)  
Antiguo 05/08/2008, 08:15
Avatar de Carlojas  
Fecha de Ingreso: junio-2007
Ubicación: Shikasta
Mensajes: 1.272
Antigüedad: 16 años, 10 meses
Puntos: 49
Respuesta: Al pasar aplicación al servidor

Que tal Dianinha, y donde inicias tu variable de sesión con la cual haces la comparación de == 1?, lo que puedes hacer es lo siguiente cuando se loguea el usuario y los datos son correctos creas tu variable de sesión con el $_SESSION['contador'] = 1;
automaticamente lo rediriges a la página del menú. ahora la comparación de la misma la haces en menuppal.php que según veo en tu ejemplo es la página a la cual quieres restringir el acceso , no es necesidad de decrementar la variable de sesión puesto que solo tomará un valor al momento de la correcta verificación de los datos.Haces algo como esto:

Código PHP:
if(isset($_SESSION['contador']) and $_SESSION['contador'] == 1){
// Le permites el acceso
}else{
       
// Lo mandas al login.php

No puedes comparar tu variable de sesión porque antes de validar los datos del usuario según veo no toma ningún valor.
Saludos.

Última edición por Carlojas; 05/08/2008 a las 08:51
  #8 (permalink)  
Antiguo 05/08/2008, 13:00
 
Fecha de Ingreso: febrero-2006
Mensajes: 42
Antigüedad: 18 años, 2 meses
Puntos: 0
Respuesta: Al pasar aplicación al servidor

Listo Carlojas... muchisimas gracias por tu ayuda
ya se lo que sucede.... e salgo muy tonto resulta que en el servidor en la tabla de usuario si existia un registro con usuario y pass en blanco por eso me dejaba pasar ... me tenia loca esto

Muchas gracias de nuevo
__________________
Somos lo que nos proponemos...Cuenta con la ayuda de un ser supremo para lograrlo.
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 22:06.