Problema con $_SESSION

Iniciado por Castg!, 27 Noviembre 2009, 01:33 AM

0 Miembros y 1 Visitante están viendo este tema.

Castg!

miren tengo un problema medio bobo, lo que pasa es que quiero hacer un sistema de login y quiero usar sesions, para que con actrualiazr la pagina no pierda el valor y tenga que hacerse todo el form de vuelta, el problema que ahora siempre me entra :S, miren este es el code:
Código (php) [Seleccionar]
<?php
session_start
();
$cpanel '<div id="add-porta">
<div id="frm-porta"><span class="Estilo8 Estilo2">Agregar web a portafolio: </span><br />
          <br />
        <form action="addporta.php" method="post">
          <p><span class="Estilo8">Nombre de web:</span>
            <input type="text" name="nombre_u"> 
            <br />
            <br />
          <span class="Estilo8">Descripcion:</span>
          <div id="text-desc">
          <textarea name="desc_u" cols="35" rows="5"></textarea></div>
          </p>
          <div id="Layer29"><span class="Estilo8">Url de imagen: </span>
          <input type="text" id="url-img" name="url_img">
        </div>
        <input type="submit" name="sub" id="btn-agregar-porta" value="Agregar">
        
        </form></div>

        </div>
        <div id="add-user">
        <div id="frm-user"><span class="Estilo8 Estilo2">Agregar nuevo usuario-cliente: </span><br />
          <br />
        <form action="addporta.php" method="post">
          <span class="Estilo8">Usuario:</span>
          <input type="text" name="nombre_u"> <br /><br />
          <span class="Estilo8">Clave:   </span>
        <input type="text" name="new-pass"><input type="submit" name="sub" id="btn-agregar-user" value="Agregar"><br/><br/><span class="Estilo8">Nombre y Apellido:</span><input type="text" name="name"><br /><br /><span class="Estilo8">E-Mail:</span><input type="text" name="mail"><br /><br /><span class="Estilo8">Teléfono:</span><input type="text" name="tel"></form></div></div>'
;
if(isset(
$_POST['pwd']) && isset($_POST['user'])){
$pass htmlentities($_POST['pwd']);
$user htmlentities($_POST['user']);
$pass str_replace("'""&#38;#039;"$pass);
$user str_replace("'""&#38;#039;"$user);
}else{
$pass "";
$user "";
}
$link mysql_connect("localhost""root""");
mysql_select_db("inca_db"$link);
$dat mysql_query('SELECT * FROM users WHERE pass="'.$pass.'" AND user="'.$user.'"'$link);
$total mysql_fetch_array($dat);
if(isset(
$_SESSION['loged']) && $_SESSION['loged'] = md5("popo")){
echo 
$cpanel."con sesion"//este lo puse para saber si entro por el user o por la sesion
}elseif($total!=NULL || $total['pass']!=NULL || $total['user']!=NULL){
echo $cpanel."con user";// pero siempre entra por la sesion
$_SESSION['loged'] = md5("popo");
}else{
echo '<div id="Layer13"><div class="Estilo2" align="center" id="Layer21">Lo siento pero no  se como hiciste para llegar hasta aca, no sos admin o sos un usuario con permisos insuficientes. Si  ingresaste mal los datos, vuelve a el <a href="index.php">login</a>, sino al <a href="../index.html"> home</a>. </div>
    <div class="Estilo1" id="Layer19">Ouch!</div>  
      <img src="../imagenes/Recuadro para Error.png" width="685" height="340"></div>'
;
}
?>





y tambien tengo un logout:









Código (php) [Seleccionar]
<?php
session_start
();
$_SESSION['loged'] = "caca";
?>






al parecer esta mal el logout porq no me "borra" la variable sesion. me podran ayudar a encotrar el error?

isseu

no entendi muy bien tu problema, tu codigo es algo confuso, pero creo:

Código (php) [Seleccionar]
if(isset($_SESSION['loged']) && $_SESSION['loged'] = md5("popo")){
echo $cpanel."con sesion"; //este lo puse para saber si entro por el user o por la sesion


deberia cambiar a esto

Código (php) [Seleccionar]
if(isset($_SESSION['loged']) && $_SESSION['loged'] == md5("popo")){
echo $cpanel."con sesion"; //este lo puse para saber si entro por el user o por la sesion


intenta.

Castg!

Te amo! te juro que no pense pero nunca en mi p**a vida que ese iba a ser el problema, sos lo mas!

bleyarkngel

bueno ya que diste con la solucion!!.

talves alguien sepa de un scrip ya hecho para el sistema de sessiones de usuarios, por favor diganme onde encuentro uno para adaptarlo a mis conveniencias.

raul338

EDIT: u.u no vi las respuestas :P jajaja....no se que me pasa...estoy en otra  :huh:  :laugh:


Código (php) [Seleccionar]

if(isset($_SESSION['loged']) && $_SESSION['loged'] = md5("popo")){
      echo $cpanel."con sesion"; //este lo puse para saber si entro por el user o por la sesion
}elseif($total!=NULL || $total['pass']!=NULL || $total['user']!=NULL){
       echo $cpanel."con user";// pero siempre entra por la sesion
$_SESSION['loged'] = md5("popo");


no querras hacer

Código (php, 1) [Seleccionar]

if(isset($_SESSION['loged']) && $_SESSION['loged'] == md5("popo")){
      echo $cpanel."con sesion"; //este lo puse para saber si entro por el user o por la sesion
}elseif($total!=NULL || $total['pass']!=NULL || $total['user']!=NULL){
       echo $cpanel."con user";// pero siempre entra por la sesion
$_SESSION['loged'] = md5("popo");


y cuanto al logout, creo que habia una funcion unset para vaciar la variable session
Código (php) [Seleccionar]

unset($_SESSION["loged"]);

Castg!

no hay ningun drama, ya que estoy, tienen otra mejor idea que hacer un echo "<codigohtml>"? o vuelco algun archivo externo.?

raul338

siempre vas a tener que mostrar codigo html no??? XD XD

usa Templates ;)

Rexard

tengo problemas al utilizar $_SESSION... no me quiere realizar el login... alguien podira brindarme alguna ayuda???

Castg!

trata de ser un moco mucho mas expresivo, que problema te da, en que archivo, cual es el codigo??

~ Yoya ~

#9
Código (php) [Seleccionar]
$pass = htmlentities($_POST['pwd']);
$user = htmlentities($_POST['user']);
$pass = str_replace("'", "&#38;#039;", $pass);
$user = str_replace("'", "&#38;#039;", $user);

Estas desperdiciando la función htmlentities, esto estaria mejor.
Código (php) [Seleccionar]
$pass = htmlentities($_POST['pwd'], ENT_QUOTES);
$user = htmlentities($_POST['user'], ENT_QUOTES);

Que también afecta a las comillas simples y dobles y la convierte a entidades html, tambien tu code se puede optimizar un poco mas, creo que alguna vez programaste junto a fede_cp un código parecido, puedes tomar tu experiencia o ver el code una y otra vez xD.
Código (php) [Seleccionar]

if(isset($_SESSION['loged']) && $_SESSION['loged'] == md5("popo")){
       echo $cpanel."con sesion"; //este lo puse para saber si entro por el user o por la sesion
}elseif($total!=NULL || $total['pass']!=NULL || $total['user']!=NULL){
        echo $cpanel."con user";// pero siempre entra por la sesion
$_SESSION['loged'] = md5("popo");


Quedaria mejor asi:

Código (php) [Seleccionar]

if($_SESSION['loged'] == md5("popo")){
       echo $cpanel."con sesion"; //este lo puse para saber si entro por el user o por la sesion
}elseif($total!=NULL || $total['pass']!=NULL || $total['user']!=NULL){
        echo $cpanel."con user";// pero siempre entra por la sesion
$_SESSION['loged'] = md5("popo");

Si la session loged existe y es igual a popo en md5 se ejecuta el if() y si no existe o no es igual ps dara false, estas haciendo las cosas repetidamente...
Mi madre me dijo que estoy destinado a ser pobre toda la vida.
Engineering is the art of balancing the benefits and drawbacks of any approach.