Foros del Web » Programando para Internet » PHP »

Error en las sessiones

Estas en el tema de Error en las sessiones en el foro de PHP en Foros del Web. Saludos a todos, tengo un problema que me imagino que es sencillo pero no he podido con el =S es el seguiente, estoy creando sessiones ...
  #1 (permalink)  
Antiguo 05/05/2011, 14:45
Avatar de JJrb3  
Fecha de Ingreso: septiembre-2010
Mensajes: 51
Antigüedad: 14 años, 1 mes
Puntos: 2
Error en las sessiones

Saludos a todos, tengo un problema que me imagino que es sencillo pero no he podido con el =S es el seguiente, estoy creando sessiones para cuando ingresen las personas a la pagina WEB la parte donde comprueba el usuario coloque segun asi vi en internet.

Código PHP:
if($row2['usuario']==$usuario && $row2['contrasena1']==$contrasena)
{
   echo 
"<CENTER><FONT SIZE=+1>Ha iniciado sesi&oacute;n, si no quieres esperar entra <A HREF=ingreso/index.php>aqu&iacute;</A>.</FONT></CENTER>";
   
$_SESSION["usuario"]="$usuario";

Luego en la pagina donde ingresara coloque:

Código PHP:
<?php

    session_start
();
if(
$_SESSION["usuario"])
{
   echo 
"Bienvenidos a la pagina principal";
}
else
{
   echo 
"Error, no estas logeado actualmente";
}
?>
No se que error puedo tener, espero que alguien me pueda ayudar con esto =P
  #2 (permalink)  
Antiguo 05/05/2011, 14:51
Avatar de skiper0125  
Fecha de Ingreso: octubre-2010
Ubicación: $this->Mexico('Toluca');
Mensajes: 1.127
Antigüedad: 14 años, 1 mes
Puntos: 511
Respuesta: Error en las sessiones

¿Utilizas alguna base de datos?

Coloca todo en codigo de l login para ver mas detalles
__________________
Recuerda que estamos aquí para orientarte, y no para hacer tu trabajo.
Si mi aporte fue de ayuda, recuerda que agradecer no cuesta nada +1

Skiper0125
  #3 (permalink)  
Antiguo 05/05/2011, 15:18
Avatar de fekaa11  
Fecha de Ingreso: abril-2011
Ubicación: Córdoba / Argentina
Mensajes: 115
Antigüedad: 13 años, 6 meses
Puntos: 34
Respuesta: Error en las sessiones

Coloca el código del archivo donde te da error pero COMPLETO y muestranos el mensaje del error también.
__________________
Pedir perdón es de hombres inteligentes. Perdonar es de sabios.
  #4 (permalink)  
Antiguo 05/05/2011, 17:07
Avatar de JJrb3  
Fecha de Ingreso: septiembre-2010
Mensajes: 51
Antigüedad: 14 años, 1 mes
Puntos: 2
Respuesta: Error en las sessiones

C_l.php

Código PHP:
<?php
session_start
();
?>

<!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" dir="ltr" lang="en-US" xml:lang="en">
<head>
<link rel="shortcut icon" href="picture/favicon.ico" >
    <!--
    Created by Artisteer v2.3.0.23326
    Base template (without user's data) checked by http://validator.w3.org : "This page is valid XHTML 1.0 Transitional"
    -->
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
    <meta http-equiv="X-UA-Compatible" content="IE=EmulateIE7" />
    <title>Org.Vizards: R-Post</title>

    <script type="text/javascript" src="script.js"></script>

    <link rel="stylesheet" href="style.css" type="text/css" media="screen" />
    <!--[if IE 6]><link rel="stylesheet" href="style.ie6.css" type="text/css" media="screen" /><![endif]-->
    <!--[if IE 7]><link rel="stylesheet" href="style.ie7.css" type="text/css" media="screen" /><![endif]-->
</head>
<body>
<div id="art-main">
        <div class="art-Sheet">
            <div class="art-Sheet-tl"></div>
            <div class="art-Sheet-tr"></div>
            <div class="art-Sheet-bl"></div>
            <div class="art-Sheet-br"></div>
            <div class="art-Sheet-tc"></div>
            <div class="art-Sheet-bc"></div>
            <div class="art-Sheet-cl"></div>
            <div class="art-Sheet-cr"></div>
            <div class="art-Sheet-cc"></div>
            <div class="art-Sheet-body">
                <div class="art-Header">
                    <div class="art-Header-png"></div>
                    <div class="art-Header-jpeg"></div>
                    <div class="art-Logo">
                        <h1 id="name-text" class="art-Logo-name"><a href="index.php">Org.Vizards</a></h1>
                        <div id="slogan-text" class="art-Logo-text">Solucionando cualquier inconveniente</div>
                    </div>
                </div>
                <div class="art-nav">
                    <div class="l"></div>
                    <div class="r"></div>
                    <div class="art-nav-center">
                    <ul class="art-menu">
                        <li>
                            <a href="c_l.php" class=" active"><span class="l"></span><span class="r"></span><span class="t">Comprovacion</span></a>
                        </li>
                    </ul>
                    </div>
                </div>
                    <div class="art-content">
                        <div class="art-Post">
                            <div class="art-Post-body">
                        <div class="art-Post-inner">
                                        
                                        <BR>
                                        <BR>
<?php
session_start
();

   include(
"conec_bd.php");
    
$link=Conectarse();
    
$ip=$_SERVER['REMOTE_ADDR'];
    
$registro=mysql_query("select * from registro_orgvizards",$link);
    
$logeados=mysql_query("select * from logeados",$link);
    
$error="<head><meta http-equiv=refresh content=3;url=index.php /></head>";
    
$inicio="<head><meta http-equiv=refresh content=5;url=ingreso/index.php /></head>";
    
$usuario=$_GET['usuario'];
    
$contrasena=$_GET['clave'];
    
$tof=false;
    
$finish="1";
    


    while(
$row1=mysql_fetch_array($logeados))
   {
           if(
$row1['nombre']==$usuario && $row1['clave']==$contrasena)
         {     
          echo 
"
          <CENTER><FONT color=red SIZE=+1>Esta cuenta esta actualmente en uso.</FONT></CENTER>"
;
          echo 
$error;
          
$finish="3";
          
$tof=true;
         }
         else
         {
            
$tof=false;
         }         
    }
    if(!
$tof)
    if(
$finish="1")
    {
    while (
$row2=mysql_fetch_array($registro))
         {
         if(
$row2['usuario']==$usuario && $row2['contrasena1']==$contrasena)
         {
            echo 
"<CENTER><FONT SIZE=+1>Ha iniciado sesi&oacute;n, si no quieres esperar entra <A HREF=ingreso/index.php>aqu&iacute;</A>.</FONT></CENTER>";
                
                
$ingreso="ok";
                
                
$_SESSION["autenticado"]="SI";
                echo 
$inicio;
                
//mysql_query("insert into logeados(ip_logeados,nombre,clave,ingreso) values('$ip','$usuario','$contrasena','$ingreso')",$link);
          
                
                
$tof=true;
         }
    }

   if(!
$tof)
   {
         echo 
"<BR>
      <CENTER><FONT color=red SIZE=+1 COLOR=RED>Error al entrar, puede que el nombre de usuario o la contrase&ntilde;a este errada.</FONT></CENTER>
      <BR>"
;
      echo 
$error;
   }
   } 
      
    
mysql_free_result($registro);
    
mysql_close($link);
    
    
//By: JJrb3...

?>
                        </div>
                            </div>
                        </div>
                        
                    
                </div><div class="art-Footer">
                    <div class="art-Footer-inner">
                        <a class="art-rss-tag-icon" title="RSS"></a>
                        <div class="art-Footer-text">
                            <p>Todos los Derechos Reservados<BR>
Copyright  &copy 2010 | Org.Vizards | </p>

                        </div>
                    </div>
                    <div class="art-Footer-background"></div>
                </div>
                <div class="cleared"></div>
            </div>
        </div>
        <div class="cleared"></div>
        
    </div>
    
</body>
</html>
  #5 (permalink)  
Antiguo 05/05/2011, 17:08
Avatar de JJrb3  
Fecha de Ingreso: septiembre-2010
Mensajes: 51
Antigüedad: 14 años, 1 mes
Puntos: 2
Respuesta: Error en las sessiones

Index.php
Código PHP:
<?php
include ("seguridad.php")
?>
<html xmlns="http://www.w3.org/1999/xhtml" dir="ltr" lang="en-US" xml:lang="en">
<head>
<link rel="shortcut icon" href="picture/favicon.ico" >
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
    <meta http-equiv="X-UA-Compatible" content="IE=EmulateIE7" />
    <title>Org.Vizards: Principal</title>

    <script type="text/javascript" src="script.js"></script>

    <link rel="stylesheet" href="style.css" type="text/css" media="screen" />
</head>
<body>
<div id="art-main">
        <div class="art-Sheet">
            <div class="art-Sheet-tl"></div>
            <div class="art-Sheet-tr"></div>
            <div class="art-Sheet-bl"></div>
            <div class="art-Sheet-br"></div>
            <div class="art-Sheet-tc"></div>
            <div class="art-Sheet-bc"></div>
            <div class="art-Sheet-cl"></div>
            <div class="art-Sheet-cr"></div>
            <div class="art-Sheet-cc"></div>
            <div class="art-Sheet-body">
                <div class="art-Header">
                    <div class="art-Header-png"></div>
                    <div class="art-Header-jpeg"></div>
                    <div class="art-Logo">
                        <h1 id="name-text" class="art-Logo-name"><a href="../index.php">Org.Vizards</a></h1>
                        <div id="slogan-text" class="art-Logo-text">Solucionando cualquier inconveniente</div>
                    </div>
                </div>
                <div class="art-nav">
                    <div class="l"></div>
                    <div class="r"></div>
                    <div class="art-nav-center">
                    <ul class="art-menu">
<?php


    
include("conec_bd.php");
    
$link=Conectarse();
    
$ip=$_SERVER['REMOTE_ADDR'];
    
$logeados=mysql_query("select * from logeados",$link);
    
    if(!
null)
    {
    while(
$row2=mysql_fetch_array($logeados))
    {
           if(
$row2['ingreso']=="ok" && $row2['ip_logeados']==$ip)
        {
            echo 
"<li><a href=\"../index.php\"><span class=\"l\"></span><span class=\"r\"></span><span class=\"t\">Inicio</span></a></li>";
        }
    }
    if(!
$tof1)
   {
    echo 
"";
   }
   }
  
?>
                        <li>
                            <a href="index.php" class=" active"><span class="l"></span><span class="r"></span><span class="t">Administrador</span></a>
                        </li>
                        <li>
                            <a href="cerrar_sesion.php"><span class="l"></span><span class="r"></span><span class="t">Cerrar sesi&oacute;n</span></a>
                        </li>
                    </ul>
                    </div>
                </div>
                    <div class="art-content">
                        <div class="art-Post">
                            <div class="art-Post-body">
                        <div class="art-Post-inner">
                        
    
                        
<?php


    $logeados
=mysql_query("select * from logeados",$link);
    
$post=mysql_query("select * from post order by id_post",$link);
    
$inicio="<head><meta http-equiv=refresh content=0;url=index.php /></head>";
    
$ip=$_SERVER['REMOTE_ADDR'];
    
$query1"SELECT COUNT(*) FROM post"
    
$spemysql_query($query1) or die(mysql_error());
    
$tof1=false;
    
$tof=false;
    echo 
"hola";

    while(
$row1=mysql_fetch_array($logeados))
   {
        
#1-Si esta logeado puede ver el contenido.
    
       /*    if($row1['ingreso']=="ok" && $row1['ip_logeados']==$ip)
        {*/    
            
echo "<h2 class=art-PostHeader><BR><CENTER>Ultimos temas publicados</CENTER></h2><BR><BR><BR>";
            
#2-Se cuenta todo lo que hay en la tabla post.
            
while($row mysql_fetch_array($spe))
                    {
                        
$np=$row['COUNT(*)'];
                    }
            
#2_Fin de la ejecucion.
            //Mostrar, modificar, responder y borrar post.
            #3-Comprueba si no hay post hasta el momento, si hay post los muestra si no muestra un mensaje de estado
                
if($np!=0)
                {
                    
#4-Busca todo el contenido que tenga la tabla post
                    
while($row=mysql_fetch_array($post))
                    {
                        
//Borrar post.
                        #5-Si la direccion del "index.php?del=" no esta vacia ejecuta el borrado del post y devuelve a la pagina de inicio.
                        
if(!empty($_GET['del']))
                        {    
                            
$borrar=$_GET['del'];
                            
mysql_query("delete from post where id_post='$borrar'",$link);
                            echo 
$inicio;
                        }
                        
#5_Fin de la ejecucion.
                        //Tablas de Post y respoder
                        #6-Si la direcion "index.php?del=" esta vacia entonces ejecuta la siguiente accion que muestra la tabla.
                        
if(empty($_GET['del']))
                        {
                            echo 
"<TABLE BORDER=0 WIDTH=80% ALIGN=CENTER><TR><TD><P ALIGN=RIGHT><a href=javascript:window.open('envmen.php?id=",$row["id_post"],"','','width=470,height=225');void(null)><IMG SRC=picture/responder.png></a><a href=index.php?del=",$row["id_post"],"><IMG SRC=picture/eliminar.png></a>
                            <table WIDTH=100% class=art-article BORDER=1 ALIGN=CENTER><TR><TD><TABLE BORDER=0 ALIGN=CENTER WIDTH=100%><TR><TD><CENTER><FONT SIZE=+1>"
,$row["titulo"],"</FONT></CENTER></TD></TR><TR><TD><BR><FONT COLOR=#2A7785 size=2><B>",$row["nombre"],":</B></FONT><BR><FONT size=2>",$row["mensaje"],"</FONT><BR><P ALIGN=RIGHT><FONT SIZE=1>ID:&nbsp;",$row["id_post"],"&nbsp;&nbsp;&nbsp;</TD></TR><TR><TD><FONT SIZE=1>Fecha: ",$row["fecha"],"<BR>Hora: ",$row["hora"],"<BR>Correo: ",$row["correo"],"</TD></TR>";
                            
#7-Si no hay una respuesta entonces no mostrarla pero si la hay muestra una tabla abajo de la respuesta que se escribio.
                            
if($row["respuesta"]!=null)
                            {
                                echo 
"<TR><TD><BR><FONT COLOR=#2A7785 size=2><B>Org.Vizards:</FONT></B><BR><FONT size=2>",$row["respuesta"],"</FONT><BR><BR><TR><TD><FONT SIZE=1>Fecha: ",$row["r_fecha"],"<BR>Hora: ",$row["r_hora"],"</TD></TR>";
                            }
                            
#7_Fin de la ejecucion.
                            
echo "</TABLE></TD></TR></TABLE></TD></TR></TABLE><BR><BR><BR>";
                        }
                        
#6_Fin de la ejecucion.
                    
}
                    
$tof=true;
                }
                
#3_Fin de la ejecucion.
                
if($np==0)
                {
                    echo 
"<CENTER><FONT SIZE=2>No hay nada hasta el momento...</CENTER></FONT><BR><BR>";
                }

            
$tof1=true;
        
//}
        
        /*else
        {
            echo "<BR><BR><BR><CENTER><FONT SIZE=+1 COLOR=RED>No tienes aceso a esta pagina.</FONT></CENTER><BR><BR><BR>";
        }*/
    
}
    
#1_Si no esta logeado no tienes aceso al contenido.
/*if(!$tof1)
   {
         echo "<BR><BR><BR><CENTER><FONT SIZE=+1 COLOR=RED>No tienes aceso a esta pagina.</FONT></CENTER><BR><BR><BR>";
   }
   */
   
    
mysql_close($link);
    
    
//By: JJrb3...

?>


</CENTER>

                                        
                        </div>
                            </div>
                        </div>
                        
                    
                </div><div class="art-Footer">
                    <div class="art-Footer-inner">
                        <a class="art-rss-tag-icon" title="RSS"></a>
                        <div class="art-Footer-text">
                            <p>Todos los Derechos Reservados<BR>
Copyright  &copy 2010 | Org.Vizards | </p>

                        </div>
                    </div>
                    <div class="art-Footer-background"></div>
                </div>
                <div class="cleared"></div>
            </div>
        </div>
        <div class="cleared"></div>
        
    </div>
    <BR>
</body>
</html>
Ya logre corregi ahora como hago para cerrar las sessiones???
  #6 (permalink)  
Antiguo 05/05/2011, 18:03
Avatar de fekaa11  
Fecha de Ingreso: abril-2011
Ubicación: Córdoba / Argentina
Mensajes: 115
Antigüedad: 13 años, 6 meses
Puntos: 34
Respuesta: Error en las sessiones

Para destruir las sesiones usa session_destroy(); (http://php.net/manual/es/function.session-destroy.php)

Saludos !
__________________
Pedir perdón es de hombres inteligentes. Perdonar es de sabios.
  #7 (permalink)  
Antiguo 06/05/2011, 08:02
Avatar de JJrb3  
Fecha de Ingreso: septiembre-2010
Mensajes: 51
Antigüedad: 14 años, 1 mes
Puntos: 2
Respuesta: Error en las sessiones

Gracias por la ayuda, ya me funciona a la perfeccion =P

Etiquetas: sesiones
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 13:01.