Foros del Web » Programando para Internet » PHP »

Problemas con sessiones

Estas en el tema de Problemas con sessiones en el foro de PHP en Foros del Web. Que tal compañeros, mi problema es que cuando hago una llamada a un session, todo funciona, el punto es que mando a llamar una nueva ...
  #1 (permalink)  
Antiguo 20/07/2012, 10:35
Avatar de poncharelo_69  
Fecha de Ingreso: octubre-2011
Ubicación: Queretaro
Mensajes: 86
Antigüedad: 13 años, 1 mes
Puntos: 10
Problemas con sessiones

Que tal compañeros, mi problema es que cuando hago una llamada a un session, todo funciona, el punto es que mando a llamar una nueva ventana o iframe con jQuery pero cuando quiero llamar una funcion de php con una session esta no funciona.

Código PHP:
 <?php
     
//error_reporting(E_ALL & ~E_NOTICE);
     //session_start();
    
include 'recursos/config.php';
    
//$dato = new funcion();
    
$id $_SESSION['id'];
?>
<!DOCTYPE html>
<html lang="es-mx">
<head>
<meta charset="UTF-8" />
<script type="text/javascript" src="recursos/date.js"></script>
<script type="text/javascript">
$(document).ready(function()
{
    $(".tab_content").hide();
    $("ul.tabs li:first").addClass("active").show();
    $(".tab_content:first").show();

    $("ul.tabs li").click(function()
       {
        $("ul.tabs li").removeClass("active");
        $(this).addClass("active");
        $(".tab_content").hide();

        var activeTab = $(this).find("a").attr("href");
        $(activeTab).fadeIn();
        return false;
    });
});
$(document).ready(function(){
    $(".ramo").change(function(){
        $.get("busquedas2.php",{ id:$(this).val() },function(data){$("#result").html(data);})
    });
})
$(document).ready(function(){
    $("#subarea").change(function(){
        $.get("compania.php",{ id:$(this).val() },function(data){$("#compania").html(data);})
    });
})
</script>
</head>

<body>
    <div id="tarea">
        <a href="principal.php"><img src="../images/close1.png" alt="Cerrar"></a>
                <div id="ntarea">
                    <?php //echo 'id: '.$id;?>
                    <h3>Tareas</h3>
                    <ul class="tabs">
                        <li><a href="#tab1">Agregar</a></li>
                        <li><a href="#tab2">Modificar</a></li>
                        <li><a href="#tab3">Eliminar</a></li>
                    </ul>
                    <div class="tab_container">
                        <div id="tab1" class="tab_content">
                    <form method="post" action="recursos/agregaTarea.php" target="frame">
                        <div id="forma">
                            <select name="clientes">
                                <option value="">Seleccione un cliente</option>
                                <?php //$dato->cliente();
                                
$sql 'select * from clientes'$res mysql_query($sql);
                                while(
$row mysql_fetch_array($res)){
                                    echo 
'<option value="'.$row['id'].'">'.$row['nombre'].' - '.$row['compania'].'</option>';
                                }
                                
?>
                            </select>
                        </div>
                        <div id="forma">
                            <p>Área</p>
                            <?php //$dato->areas1();
                            
$sql 'select * from areas'$res mysql_query($sql);
                            while(
$row mysql_fetch_array($res)){
                                echo 
'<input type="checkbox" name="ramo" class="ramo" id="ramo" value="'.$row['id'].'" /><label>'.$row['area'].'</label>';
                            }
                            
?>
                        </div>
                        <div id="forma">
                            <div id="result"></div>
                        </div>
                        <div id="forma">
                            <div id="compania"></div>
                        </div>
                        <div id="forma">
                            <p>Descripción de la tarea</p>
                            <textarea name="desc" id="desc" cols="40" rows="10" ></textarea>
                        </div>
                        <div id="forma">
                            <p>Fecha y Hora:</p>
                            <input type="text" name="datepicker" id="datepicker" readonly="readonly" size="12" />
                            <select name="hora">
                                <option value="0">Elige la hora...</option>
                                <option value="8">8:00</option>
                                <option value="9">9:00</option>
                                <option value="10">10:00</option>
                                <option value="11">11:00</option>
                                <option value="12">12:00</option>
                                <option value="13">13:00</option>
                                <option value="14">14:00</option>
                                <option value="15">15:00</option>
                                <option value="16">16:00</option>
                                <option value="17">17:00</option>
                                <option value="18">18:00</option>
                                <option value="19">19:00</option>
                                <option value="20">20:00</option>
                            </select>
                        </div>
                        <div id="forma">
                            <!--input type="hidden" name="id" value="<?php echo $_SESSION['id'];?>" /-->
                            <input type="image" src="../images/btn.png" />
                        </div>
                    </form>
                    </div>
                    <div id="tab2" class="tab_content">
                        <?php //$dato->visor_tareas($_SESSION['id']);
                        
$sql 'select * from tareas where a_usuario = '.$_SESSION['id']; $res mysql_query($sql);
                        while(
$row mysql_fetch_array($res)){
                            echo 
'<table><tr>
                                <tr><td><input type="checkbox" value="'
.$row[3].'" id="listo" name="listo" />Terminado</td></tr>
                                <td class="encabezado">'
.$this->general('nombre''odt''id ='.$odt).' de '.$this->general('nombre','clientes','id='.$row[1]).'</td>
                                <td class="encabezado">Fecha: '
.$row[2].'</td></tr>
                                <tr><td colspan="2">'
.$row['descripcion'].'</td></tr>
                                <tr><td>Compa&ntilde;ia: '
.$this->c_tareas($row[3]).'</td></tr>
                            </table>'
;
                        }
                        
?>
                    </div>
                    <!--div id="tab3" class="tab_content">
                        <?php //$dato->delTareas($id);?>
                    </div-->
                     <iframe name="frame" id="frame" width="0" height="0" frameborder="0"></iframe>
                </div>
            </div>
    </div><!--End Tarea-->
</body>
</html>
El archivo anterior se abre mediante una llamada con jquery (Si es necesaria la funcion la coloco)

Mi archivo pincipal que hace el session_start es el siguiente:

Código PHP:
<?php 
    session_start
(); //Aqui se inicia la sesion
    
if(isset($_SESSION['id'])){
    include 
'recursos/funciones.php';
    
$dato = new funcion();
    
$odt $_GET['odt'];
    
//$usuario =$_SESSION['id'];
?>
<!DOCTYPE html>
<html lang="es-mx">
<head>
<meta charset="UTF-8" />
<?php include 'recursos/header.php';?>
<title>Untitled Document</title>
</head>

<body ><!--Administrador-->
    <!--div id="contenido"-->
        <div id="header">
            <div id="nombre">
                <p>Bienvenido <strong><?php echo $_SESSION['user'];?></strong></p>
            </div>
            <div id="titulo">
                <p>Workspace</p>
            </div>
            <a href="../recursos/close.php">Cerrar Sesion</a>
        </div>
        <div id="contenedor">
            <div id="botones">
                <a href="#" id="tareita"><img src="../images/btn_tarea.png" /></a>
                <a href="#" id="usuario"><img src="../images/btn_usuario.png" /></a>
                <a href="#" id="areas"><img src="../images/btn_areas.png" /></a>
                <a href="#" id="odts"><img src="../images/btn_odts.png" alt="ODTS" /></a>
                <a href="#" id="empresa"><img src="../images/btn_compania.png" /></a>
                <a href="#" id="recurrente"><img src="../images/btn_recurrente.png" alt="Recurrente" /></a>
                <a href="principal.php?rev=1" ><img src="../images/btn_finalizada.png" alt="Revision" /></a>
                <a href="principal.php?rep=1"><img src="../images/btn_reporte.png" alt="Reportes" /></a>
                <a href="#" id="cliente"><img src="../images/btn_clientes.png" alt="Clientes" /></a>
            </div>
            <div id="nueva">
                <div id="resultado"></div>
            </div>
            <?php if($odt!=""){?>
            <div id="tareas">
                <div class="titulo">
                    <p>Tareas Pendientes</p>
                </div>
                <div class="informacion">
                    <?php $dato->tarea($id,$odt);?>
                </div>
            </div>
            <?php } if($_GET['rev']!=""){?>
            <div id="tareas">
                <div class="titulo">
                    <p>Revisiones</p>
                </div>
                <div class="informacion">
                    <?php $dato->revision();?>
                </div>
            </div>
            <?php } if($_GET['rep']!=""){?>
            <div id="tareas">
                <div class="titulo">
                    <p>Reportes</p>
                </div>
                <div class="informacion">
                    <?php $dato->usuario();?>
                </div>
            </div>
            <?php }?>
            <div id="menu">
                <div id="reloj">
                    <?php echo date('d - F');?>
                    <form name="form_reloj" id="form_reloj">
                        <input type="text" name="reloj" size="10" readonly>
                    </form>
                </div>
                <?php include'lateral.php';?>
            </div>
        </div>
        <div id="mensajes"></div>
    <!--/div-->
</body>
</html>
<?php
    
}else{
        
header('Location: ../index.php');
    }
?>
En este ultimo archivo la session si funciona, pero en el primero no jala, ya intente poniendole nuevamente el session_start(), pero como es obvio no funciona porque ya fue llamado anteriormente. Dentro del div de resultado, ahí es donde se abre el primer archivo.

No se si me puedan ayudar y cual sea el error?
  #2 (permalink)  
Antiguo 20/07/2012, 10:49
Colaborador
 
Fecha de Ingreso: marzo-2008
Ubicación: Sabadell
Mensajes: 4.897
Antigüedad: 16 años, 8 meses
Puntos: 574
Respuesta: Problemas con sessiones

session_start();

Debe estar en la primera linea de TODOS los ficheros.
__________________
Quim
--------------------------------------------------
Ayudar a ayudar es una buena práctica!!! Y da buenos resultados.
  #3 (permalink)  
Antiguo 20/07/2012, 11:27
Avatar de poncharelo_69  
Fecha de Ingreso: octubre-2011
Ubicación: Queretaro
Mensajes: 86
Antigüedad: 13 años, 1 mes
Puntos: 10
Respuesta: Problemas con sessiones

Lo entiendo y ya lo intente, solamente que en si lo pongo en el archivo que se carga dentro del primero me manda un error.

Este es el error que me muestra

Código HTML:
Warning: session_start() [function.session-start]: Cannot send session cache limiter - headers already sent (output started at /home/bumap/public_html/gpiSys/Ger/tarea.php:1) in /home/bumap/public_html/gpiSys/Ger/tarea.php on line 2
  #4 (permalink)  
Antiguo 20/07/2012, 11:49
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 18 años, 6 meses
Puntos: 2135
Respuesta: Problemas con sessiones

Revisa que no tengas ninguna salida de texto antes de llamar a <?php y también revisa que tu archivo este codificado como UTF8 SIN BOM, o usa otro charset para evitar eso.

Saludos.
  #5 (permalink)  
Antiguo 20/07/2012, 12:01
Avatar de poncharelo_69  
Fecha de Ingreso: octubre-2011
Ubicación: Queretaro
Mensajes: 86
Antigüedad: 13 años, 1 mes
Puntos: 10
Respuesta: Problemas con sessiones

Solucionado... No es la primera vez que me pasa, les comento que el problema estaba que cuando abria <?php, habia un espacio antes entre el margen y la simbolo, por lo que me pasaba eso.

Muchas gracias por su ayuda.

Etiquetas: html, mysql, sql, sesiones, usuarios
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 12:15.