Foros del Web » Programando para Internet » PHP »

Sesiones

Estas en el tema de Sesiones en el foro de PHP en Foros del Web. Hola este codigo me funciona perfectamente pero existe un problema que no se donde puede estar pienso q es en la sesiones pero espero su ...
  #1 (permalink)  
Antiguo 31/01/2009, 18:58
(Desactivado)
 
Fecha de Ingreso: diciembre-2008
Mensajes: 421
Antigüedad: 15 años, 3 meses
Puntos: 0
Sesiones

Hola este codigo me funciona perfectamente pero existe un problema que no se donde puede estar pienso q es en la sesiones pero espero su opinion se trata de lo siguiente cuando termima de hacer 3a.php existe un link q dice volver a esta misma pagina pero salta directamente a echo "Datos incorrectos por favor intentelo de nuevo"; entonces debe volver a logear y entrar asi
?php
conexion a la base
$ssql = "SELECT nick,contrasena,veo FROM login3 WHERE nick='$usuario' and contrasena='$contrasena'";
$rs = mysql_query($ssql,$link);
if (mysql_num_rows($rs)!= 0){
session_start();
session_register("autentificado");
$autentificado = "SI";
$_SESSION["usuario"] = $usuario;

?>

<html>
<head>
<title>Menu de Opciones</title>
</head>
<body>
<h4 class="title" align="center">Buenos Dias <?php echo $_SESSION["usuario"]; ?> </h4>

<center>
<table border="0" id="box-table-a" align="center">
<tr>
<br>
--------------------------------------------------------------------
<br>
<td colspan="2" align="center"><font size="5" color="#ff0000"><u>Menu Personal</u></font></td>
</tr>
<tr>
<td align="left">
<p class="text1">
<?php
// $a = ("Select veo from login3 where nick ='$usuario' and contrasena ='$contrasena'");
// $b = mysql_query($ssql,$link);
$datos = mysql_fetch_array($rs);
if($datos['veo'] == 0) {

?>
<li> <a href= "3a.php"><font size="3" color="#000000">Ficha Individual</font></a> </li><br>
<?php
mysql_query ("Update login3 set veo = 1 where nick ='$usuario'");
}

else {
echo "Ya lleno este formulario Gracias ::";
}
?>
<li> <a href= "4.php"><font color="#000000" size="3">Modificar</font> </a> </li><br>
<li> <a href="salir.php"><font color="#000000" size="3">Cerrar Sesion</font> </a> </li>
</p>
</td>


</tr>
</table>
</center>
<br>
<?php
exit();
}
else {

echo "Datos incorrectos por favor intentelo de nuevo";
}
mysql_free_result($rs);
mysql_close($link);
?>
</body>
</html>

Aver espero su sabiduria para decirme donde esta mi error
  #2 (permalink)  
Antiguo 31/01/2009, 19:10
Avatar de vicram10  
Fecha de Ingreso: enero-2009
Ubicación: Asuncion
Mensajes: 326
Antigüedad: 15 años, 2 meses
Puntos: 27
Respuesta: Sesiones

verifica que tu consulta sql sea la correcta, esta enviando vacio, por eso salta

la condicion que le das.
  #3 (permalink)  
Antiguo 31/01/2009, 19:26
(Desactivado)
 
Fecha de Ingreso: diciembre-2008
Mensajes: 421
Antigüedad: 15 años, 3 meses
Puntos: 0
Respuesta: Sesiones

No entiendo muy bien en cual de las consultas
  #4 (permalink)  
Antiguo 31/01/2009, 19:36
Avatar de Ronruby  
Fecha de Ingreso: julio-2008
Ubicación: 18°30'N, 69°59'W
Mensajes: 4.879
Antigüedad: 15 años, 9 meses
Puntos: 416
Respuesta: Sesiones

Código PHP:
session_register("autentificado");
$autentificado "SI"
No uses session_register, esta obsoleto.
Usa directamente: $_SESSION['autentificado'] = 'SI';
  #5 (permalink)  
Antiguo 31/01/2009, 20:12
(Desactivado)
 
Fecha de Ingreso: diciembre-2008
Mensajes: 421
Antigüedad: 15 años, 3 meses
Puntos: 0
Respuesta: Sesiones

ok pero a mi pregunta
  #6 (permalink)  
Antiguo 31/01/2009, 23:37
Avatar de Ronruby  
Fecha de Ingreso: julio-2008
Ubicación: 18°30'N, 69°59'W
Mensajes: 4.879
Antigüedad: 15 años, 9 meses
Puntos: 416
Respuesta: Sesiones

Código PHP:
$ssql "SELECT nick,contrasena,veo FROM login3 WHERE nick='$usuario' and contrasena='$contrasena'"
Tu tienes programado, que si esa consulta no devuelve resultados, que no guarde la session.
Asegurate de que las variables $usuario y $contrasena se estan pasando correctamente.
  #7 (permalink)  
Antiguo 01/02/2009, 00:44
Avatar de MaTyS  
Fecha de Ingreso: enero-2009
Ubicación: Mar del Plata
Mensajes: 220
Antigüedad: 15 años, 3 meses
Puntos: 18
Respuesta: Sesiones

Tenes que utilizar:
Código PHP:
$_SESSION['s_nick'] = 'SI'
O me equivoco ?
  #8 (permalink)  
Antiguo 01/02/2009, 18:07
(Desactivado)
 
Fecha de Ingreso: diciembre-2008
Mensajes: 421
Antigüedad: 15 años, 3 meses
Puntos: 0
Respuesta: Sesiones

$_SESSION['s_nick'] = 'SI'; no me es muy util igual sigue lo mismo
  #9 (permalink)  
Antiguo 01/02/2009, 19:12
okram
Invitado
 
Mensajes: n/a
Puntos:
Respuesta: Sesiones

En tu primera consulta, $usuario y $contrasena, de dónde los sacas? Presumo vienen de un login anterior, entonces deberías usar las variables de sesión guardadas al momento del login para efectuar esa consulta.

  #10 (permalink)  
Antiguo 01/02/2009, 19:35
(Desactivado)
 
Fecha de Ingreso: diciembre-2008
Mensajes: 421
Antigüedad: 15 años, 3 meses
Puntos: 0
Respuesta: Sesiones

Si primero vienes de una formulario de login pero despues usar estar variables de sesion se activan solo cuando esta dentro me hago entender
  #11 (permalink)  
Antiguo 01/02/2009, 19:40
okram
Invitado
 
Mensajes: n/a
Puntos:
Respuesta: Sesiones

No. Al hacer el login guardas los datos en variables de sesión, cierto? Debes hacer tu consulta en base a esos datos.

  #12 (permalink)  
Antiguo 02/02/2009, 09:28
(Desactivado)
 
Fecha de Ingreso: diciembre-2008
Mensajes: 421
Antigüedad: 15 años, 3 meses
Puntos: 0
Respuesta: Sesiones

A la primerta consulta esta con +
if (mysql_num_rows($rs)!= 0){
session_start();
session_register("autentificado");
$autentificado = "SI";
//$_SESSION['s_nick'] = 'SI';
$_SESSION["usuario"] = $usuario;
$_SESSION["contrasena"] = $password;
una ves q es veradad entra pero sino sale me decis que aqui haga la consulta ???
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 19:48.