consulta sobre variables de session y clases
Publicado por jose (18 intervenciones) el 23/10/2008 00:17:10
Buenas tardes a todos,
Tengo un problemita, les explico..
tengo este codigo dentro de un codigo .php:
/*==================================================================*/
<?php
session_start(); //comienzo la session
//controlo que entre por primera vez
if(isset($_SESSION['usuario']) && isset($_SESSION['contrasenia']) && isset($_SESSION['motor'])){
$usuario = $_SESION["usuario"];
$contrasenia = $_SESION["contrasenia"];
$motor = $_SESION["motor"];
}else{
$usuario = $HTTP_POST_VARS["usuario"];//$_POST["usuario"]
$contrasenia = $HTTP_POST_VARS["contrasenia"];//$_POST["contrasenia"];
$motor = $HTTP_POST_VARS["motor"];//$_POST["motor"];
$_SESSION["usuario"] = $usuario ;
$_SESSION["contrasenia"] = $contrasenia;
$_SESSION["motor"] = $motor;
echo"entro aca";
echo"$usuario";
echo"$contrasenia";
echo"$motor";
}
include("consulta.php");
include("claseconexion.php");
if (!isset($_SESSION['conexion']))
{
//INSTANCIO UNA CLASE CONEXION
$conecta=new conectate();
$conecta->Conectar();
//INSTANCIO UNA CLASE CONSULTA
$gene=new clase_consulta();
$gene->cone=$conecta->Conectar();
$_SESSION["conexion"] = $conecta;
$_SESSION["consulta"] = $gene;
}else{
$conecta =$_SESSION["conexion"];
$gene = $_SESSION["consulta"];
}
// GENERO EL QUERY EN UNA CLASE Y OBTENGO LOS RESULTADOS
$sql_result=$gene->consul_procesos();
echo "<TABLE BORDER=0>";
echo "<TR>";
echo "<TD>spid</TD>";
echo "<TD>usuario</TD>";
echo "<TD>Comando</TD>";
echo "<TD></TD>";
echo "<TD></TD>";
echo "</TR>";
$color1 = "#E9E9E9";
$color2 = "#F6F6F6";
$a = 0;
while ($row = sybase_fetch_array($sql_result)) {
$row_color = ($a % 2) ? $color1 : $color2;
$a++;
echo "<TR>";
echo "<TD bgcolor = $row_color>".$row["spid"]."</TD>";
echo "<TD bgcolor = $row_color>".$row["usuario"]."</TD>";
echo "<TD bgcolor = $row_color>".$row["cmd"]."</TD>";
echo "<TD bgcolor = $row_color><a href='sqltext.php?spid=".$row["spid"]."' target='_blank'> SQLText </a></TD>";
echo "<TD bgcolor = $row_color><a href='queryplan.php?spid=".$row["spid"]."' target='_blank'> QueryPlan </a></TD>";
echo "</TR>";
}
echo "</TABLE>";
// LIBERO RECURSOS Y CIERRO LA CONECCION
//sybase_free_result($sql_result); ybase_close($connection);
//$conecta->desconectate();
?>
/*=================================================================*/
cree dos clases en php una conexion y otra llamada consulta, mi intencion es separar la conexion conectar - desconectar. me conecto en una pagina y mantengo mi conexion abierta moviendome en varias paginas que conforman mi sitio, hasta que la cierro en otra pagina o con un boton o lo que fuere....
cuando trate de separa la conexion de su desconexion me surgieron los problemas(las clases andan gracias a la ayuda del foro)aqui estoy intentado pasar mi instancia conexion
en una vaiable de session, pero el session_start(); me tira un error !! que no entiendo :S
mis preguntas son :
1) puedo hacer esto? (pasar una clase en esta forma?)
2)mas alla de que las condiciones (IF - END) anden o no.. este es el error que me tira:
"Warning: session_start() [function.session-start]: Cannot send session cache limiter - headers already sent (output started at C:Archivos de programaApache Software FoundationApache2.2htdocsprocesos.php:6) in C:Archivos de programaApache Software FoundationApache2.2htdocsprocesos.php on line 49"
tiene que ver con el codigo?en la linea 49 esta el session_start();
3)es correcta la forma que uso para recuperar las sessiones?
no kiero extenderme mas, si alguien me puede ayudarme con gusto puedo explicarme mejor.
Tengo un problemita, les explico..
tengo este codigo dentro de un codigo .php:
/*==================================================================*/
<?php
session_start(); //comienzo la session
//controlo que entre por primera vez
if(isset($_SESSION['usuario']) && isset($_SESSION['contrasenia']) && isset($_SESSION['motor'])){
$usuario = $_SESION["usuario"];
$contrasenia = $_SESION["contrasenia"];
$motor = $_SESION["motor"];
}else{
$usuario = $HTTP_POST_VARS["usuario"];//$_POST["usuario"]
$contrasenia = $HTTP_POST_VARS["contrasenia"];//$_POST["contrasenia"];
$motor = $HTTP_POST_VARS["motor"];//$_POST["motor"];
$_SESSION["usuario"] = $usuario ;
$_SESSION["contrasenia"] = $contrasenia;
$_SESSION["motor"] = $motor;
echo"entro aca";
echo"$usuario";
echo"$contrasenia";
echo"$motor";
}
include("consulta.php");
include("claseconexion.php");
if (!isset($_SESSION['conexion']))
{
//INSTANCIO UNA CLASE CONEXION
$conecta=new conectate();
$conecta->Conectar();
//INSTANCIO UNA CLASE CONSULTA
$gene=new clase_consulta();
$gene->cone=$conecta->Conectar();
$_SESSION["conexion"] = $conecta;
$_SESSION["consulta"] = $gene;
}else{
$conecta =$_SESSION["conexion"];
$gene = $_SESSION["consulta"];
}
// GENERO EL QUERY EN UNA CLASE Y OBTENGO LOS RESULTADOS
$sql_result=$gene->consul_procesos();
echo "<TABLE BORDER=0>";
echo "<TR>";
echo "<TD>spid</TD>";
echo "<TD>usuario</TD>";
echo "<TD>Comando</TD>";
echo "<TD></TD>";
echo "<TD></TD>";
echo "</TR>";
$color1 = "#E9E9E9";
$color2 = "#F6F6F6";
$a = 0;
while ($row = sybase_fetch_array($sql_result)) {
$row_color = ($a % 2) ? $color1 : $color2;
$a++;
echo "<TR>";
echo "<TD bgcolor = $row_color>".$row["spid"]."</TD>";
echo "<TD bgcolor = $row_color>".$row["usuario"]."</TD>";
echo "<TD bgcolor = $row_color>".$row["cmd"]."</TD>";
echo "<TD bgcolor = $row_color><a href='sqltext.php?spid=".$row["spid"]."' target='_blank'> SQLText </a></TD>";
echo "<TD bgcolor = $row_color><a href='queryplan.php?spid=".$row["spid"]."' target='_blank'> QueryPlan </a></TD>";
echo "</TR>";
}
echo "</TABLE>";
// LIBERO RECURSOS Y CIERRO LA CONECCION
//sybase_free_result($sql_result); ybase_close($connection);
//$conecta->desconectate();
?>
/*=================================================================*/
cree dos clases en php una conexion y otra llamada consulta, mi intencion es separar la conexion conectar - desconectar. me conecto en una pagina y mantengo mi conexion abierta moviendome en varias paginas que conforman mi sitio, hasta que la cierro en otra pagina o con un boton o lo que fuere....
cuando trate de separa la conexion de su desconexion me surgieron los problemas(las clases andan gracias a la ayuda del foro)aqui estoy intentado pasar mi instancia conexion
en una vaiable de session, pero el session_start(); me tira un error !! que no entiendo :S
mis preguntas son :
1) puedo hacer esto? (pasar una clase en esta forma?)
2)mas alla de que las condiciones (IF - END) anden o no.. este es el error que me tira:
"Warning: session_start() [function.session-start]: Cannot send session cache limiter - headers already sent (output started at C:Archivos de programaApache Software FoundationApache2.2htdocsprocesos.php:6) in C:Archivos de programaApache Software FoundationApache2.2htdocsprocesos.php on line 49"
tiene que ver con el codigo?en la linea 49 esta el session_start();
3)es correcta la forma que uso para recuperar las sessiones?
no kiero extenderme mas, si alguien me puede ayudarme con gusto puedo explicarme mejor.
Valora esta pregunta


0