Foros del Web » Programando para Internet » PHP »

control de sesiones

Estas en el tema de control de sesiones en el foro de PHP en Foros del Web. Hola webforeros :) vuelvo a necesitaros para que me ayudeis con un problemilla a la hora de utilizar el comando $_SESSION. os comento, no carga ...
  #1 (permalink)  
Antiguo 11/01/2009, 10:03
 
Fecha de Ingreso: enero-2009
Mensajes: 29
Antigüedad: 15 años, 2 meses
Puntos: 0
control de sesiones

Hola webforeros :)
vuelvo a necesitaros para que me ayudeis con un problemilla a la hora de utilizar el comando $_SESSION. os comento, no carga el valor de nick en $_SESSION, no entiendo cual es el problema.
beuno me confio a vosotros
muhas gracias de antemano.


<?php
session_start();
if (isset($_POST['nick']) && isset($_POST['contraseña']))
{
$nick=$_POST['nick'];
$contraseña=$_POST['contraseña'];
$db_conn = mysql_connect ("localhost", $nombre, $contraseña) or die ("Error al conectar con la base de datos");
$seleccion=mysql_select_db ("videoteca") or die ("Error al seleccionar la base de datos");
$query=mysql_query("SELECT nick FROM clientes WHERE nick=\''.$nick.'\'' and contraseña=\''.$contraseña.'\''");
if ($row["contraseña"] == $contraseña)
{
$_SESSION['usuariovalido']=$nick;
}
}
?>
<html>
<body>
<h1>Home page</h1>
<?
if (isset ($_SESSION['usuariovalido']))
{
echo "Estas logeado en: ".$_SESSION['usuariovalido']."<br/>";
echo "<a href='logout.php'>Log out</a><br/>";
}
else
{
if (isset ($nick))
{
echo "No te puedes identificar";
}
else
{
echo "No estas identificado";
}
echo "<form method= 'post' action='authmain.php'>";
echo "<table>";
echo "<tr><td>Nick: </td>";
echo "<td><input type='text' name='nick' /></td></tr>";
echo "<tr><td>Contraseña: </td>";
echo "<td><input type='password' name='contraseña'></td></tr>";
echo "<tr><td colspan='2' align='center'>";
echo "<input type='submit' value='Entrar' /></td></tr>";
echo "</table></form>";
}
?>
<br />
<a href="solo_miembros.php">Seccion de miembros</a>
</body>
</html>
  #2 (permalink)  
Antiguo 11/01/2009, 11:37
okram
Invitado
 
Mensajes: n/a
Puntos:
Respuesta: control de sesiones

Cuál de los 3 "mensajes" de autentificación que ahi tienes se muestra? Dependiendo de cuál es el que se muestra se podrá inferir la ubicación del error.

  #3 (permalink)  
Antiguo 11/01/2009, 14:21
 
Fecha de Ingreso: enero-2009
Mensajes: 29
Antigüedad: 15 años, 2 meses
Puntos: 0
Respuesta: control de sesiones

el mensaje que me muestar es el de no te puedes identificar,
yo creo que es porque $_SESSION no recibe el valor de $nick, pero no entiendo porque...
gracias ;)
  #4 (permalink)  
Antiguo 11/01/2009, 14:49
 
Fecha de Ingreso: diciembre-2008
Mensajes: 6
Antigüedad: 15 años, 3 meses
Puntos: 0
Respuesta: control de sesiones

Lo que te faltan en el archivo PHP que recibe la variables de sesión es:

<?php
session_start();
ob_start();
?>
  #5 (permalink)  
Antiguo 11/01/2009, 15:29
 
Fecha de Ingreso: enero-2009
Mensajes: 29
Antigüedad: 15 años, 2 meses
Puntos: 0
Respuesta: control de sesiones

he probado lo de ob_start (); y no parece ser la solucion.
  #6 (permalink)  
Antiguo 11/01/2009, 17:00
okram
Invitado
 
Mensajes: n/a
Puntos:
Respuesta: control de sesiones

Entonces el error está en if($row["contraseña"] == $contraseña). Esa comparación es la condición para que tu variable sea creada. Y examinando bien tu código, haces la consulta, pero no extraes los datos de ella, entonces $row no existe en tu script. Te falta algo como $row = mysql_fetch_assoc($query);. Por otro lado, no veo que en tu consulta estés pidiendo el campo contraseña, solo el nick (SELECT nick FROM...)

Corrige esas dos cosas y el problema se solucionará.

  #7 (permalink)  
Antiguo 11/01/2009, 19:17
 
Fecha de Ingreso: marzo-2008
Mensajes: 73
Antigüedad: 16 años
Puntos: 0
Respuesta: control de sesiones

Intenta hacer un simple var_dump($_POST); die; al principio del Script, después de session_start(); para ver que es lo que contiene el arreglo. Si no tiene nada, el problema está en el script pasado, siempre trata de aislar los posibles problemas.

Y @okram... ¿Donde viste todo eso? No veo nada de Bases de Datos en este post o_o
  #8 (permalink)  
Antiguo 11/01/2009, 19:27
 
Fecha de Ingreso: abril-2006
Mensajes: 1.128
Antigüedad: 17 años, 11 meses
Puntos: 33
Respuesta: control de sesiones

gonda69:
Mi sugerencia es que hagas bien lo que te ha planteado el amigo Okram; es decir lo de la Base De Datos.
A partir de ahi puedes continuar con las sesiones.
Recuerda que php guarda las sesiones en el archivo que ha sido designado
para ello en el php.ini.
Saludos
Franco
P.S. Una pregunta que te haria es ->
¿Esta todo el codigo en un solo archivo? o ¿Hay mas de uno?
  #9 (permalink)  
Antiguo 12/01/2009, 08:10
 
Fecha de Ingreso: enero-2009
Mensajes: 29
Antigüedad: 15 años, 2 meses
Puntos: 0
Respuesta: control de sesiones

hay mas de uno
pero de momento este el primero que cree, y los demas son paginas a partit de este
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 23:21.