Foros del Web » Programando para Internet » PHP »

Sesiones de */*-//!

Estas en el tema de Sesiones de */*-//! en el foro de PHP en Foros del Web. Estoy utilizando sesiones para el logueo de los usuarios, venia funcionando bien hasta ahora... Aca esta el loguin: Código: $q="select * from usuarios where nick='$nick' ...
  #1 (permalink)  
Antiguo 05/08/2006, 16:14
 
Fecha de Ingreso: diciembre-2004
Ubicación: Cordoba - Argentina
Mensajes: 503
Antigüedad: 13 años
Puntos: 1
Sesiones de */*-//!

Estoy utilizando sesiones para el logueo de los usuarios, venia funcionando bien hasta ahora...

Aca esta el loguin:

Código:
$q="select * from usuarios where nick='$nick' and password='$password'";
			//ejecuta la consulta $q sobre el enlace $link, $res es una variable numerica de entero
			$res=mysql_query($q,$link);
			//guarda en $cant la cantidad de filas que se vieron afectadas en la ultima consulta ejecutada
			$cant=mysql_affected_rows($link);
			if ($cant>0) {
			  			 //significa que hay filas q recuperar, entonces las recuperas 
						 $r=mysql_fetch_array($res);
						 session_name( 'usuario' );
						 session_start();
						 $_SESSION["usuario"] = $r["id"];
 echo "<script>document.location.href='users_panel/panel.php';</script>\n";
una ves que me envio al panel.php, en el mismo se encuentra incluido el archivo ses.php :

Código:
<?
session_name( 'usuario' );
session_start();
//si isset($_SESSION["Usuario"] no fue fijada te lleva al index.php, sino continua (!=not)
if (!isset($_SESSION["usuario"])){
			echo "<script>alert('Nombre de usuario o contraseña incorrecta, por favor intente nuevamente'); document.location.href='index.php';</script>\n";

			}
?>
Este es el panel por si lo quieren ver:

Código:
<?
include_once("../conex/ses.php");
include_once("../conex/conex.php");
$link=Conectarse(); 

?>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<title>Untitled Document</title>
</head>

<body>

<div><b><a href="?admin=inicio">Bienvenido al Panel de Administracion</a></b></div>

<table width="950" height="auto" border="0" style="border:2px solid black">
  <tr>
    <td width="15%" valign="top" style="border-right:2px solid black"><? include_once("left.php");?></td>
    <td width="85%" valign="top">  
	<? $admin=$_GET['admin'];
			if (empty($_GET['admin'])or($admin=="inicio"))
		    {
		    include_once("cuerpo.php");
		    } 
		    switch ($admin) {
     		case 'datos':
         	echo '<iframe name="I1" border="0" frameborder="0" width="100%" height="500" align="center" src="includes_panel/datos.php"></iframe>';
         	break;
			case 'img':
         	echo '<iframe name="I1" border="0" frameborder="0" width="100%" height="500" align="center" src="includes_panel/imagen.php"></iframe>';
         	break;
			case 'addons':
         	echo '<iframe name="I1" border="0" frameborder="0" width="100%" height="500" align="center" src="addons"></iframe>';
         	break;
			case 'imagenes':
         	echo '<iframe name="I1" border="0" frameborder="0" width="100%" height="500" align="center" src="imagenes"></iframe>';
         	break;
			case 'otros':
         	echo '<iframe name="I1" border="0" frameborder="0" width="100%" height="500" align="center" src="otros"></iframe>';
         	break;
			}
            ?></td>
  </tr>
</table>
</body>
</html>
El problema reside en que me toma siempre que la sesion "no fue fijada"....
  #2 (permalink)  
Antiguo 05/08/2006, 19:32
Avatar de jpinedo
Colaborador
 
Fecha de Ingreso: septiembre-2003
Ubicación: Lima, Perú
Mensajes: 3.120
Antigüedad: 14 años, 2 meses
Puntos: 41
$cant = mysql_affected_rows($link);

mysql_affected_rows() no te devuelve la cantidad de registros encontrados en una consulta SELECT. Esa función debe usarse cuando haces un UPDATE, DELETE o INSERT.

Para conocer la cantidad de registros que te devuelve una consulta SELECT, utiliza mysql_num_rows().

Saludos
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 16:01.