Foros del Web » Programando para Internet » PHP »

session_start();

Estas en el tema de session_start(); en el foro de PHP en Foros del Web. Saludos tengo el siguiente codigo : archivo validar_usuario.php Cita: <?php session_start(); //datos para establecer la conexion con la base de mysql. mysql_connect('localhost','root','')or die ('Ha fallado ...
  #1 (permalink)  
Antiguo 11/11/2009, 17:39
 
Fecha de Ingreso: agosto-2009
Mensajes: 95
Antigüedad: 14 años, 7 meses
Puntos: 0
session_start();

Saludos tengo el siguiente codigo :


archivo validar_usuario.php

Cita:
<?php
session_start();
//datos para establecer la conexion con la base de mysql.
mysql_connect('localhost','root','')or die ('Ha fallado la conexión: '.mysql_error());
mysql_select_db('xpomundo')or die ('Error al seleccionar la Base de Datos: '.mysql_error());
function quitar($mensaje)
{
$nopermitidos = array("'",'\\','<','>',"\"");
$mensaje = str_replace($nopermitidos, "", $mensaje);
return $mensaje;
}
if(trim($HTTP_POST_VARS["usuario"]) != "" && trim($HTTP_POST_VARS["password"]) != "")
{
// Puedes utilizar la funcion para eliminar algun caracter en especifico
//$usuario = strtolower(quitar($HTTP_POST_VARS["usuario"]));
//$password = $HTTP_POST_VARS["password"];
// o puedes convertir los a su entidad HTML aplicable con htmlentities
$usuario = $_POST['usuario'];
$password = $_POST["password"];
$result = mysql_query('SELECT mail_v,pass_v FROM visitantes WHERE mail_v=\''.$usuario.'\'');
if($row = mysql_fetch_array($result)){
if($row["pass_v"] == $password){
echo "<script language=Javascript> location.href=\"slectxpo1.php\"; </script>";
//si el password es incorrecto
}
else{
echo "<script> alert (\"Password incorrecto.\"); </script>";
echo "<script language=Javascript> location.href=\"index.php\"; </script>";
}
//si el usuario no existe en la BD o esta mal escrito su correo electronico
}else{
echo "<script> alert (\"El usuario no existe en la Base de Datos...si quieres pertenecer a XPOMUNDO porfavor Registrate es ¡¡Gratis!! .\"); </script>";
echo "<script language=Javascript> location.href=\"index.php\"; </script>";
}
mysql_free_result($result);
}else{
echo "<script> alert (\"Debes colocar tu correo electronico como usuario y tu password en los cuadros de texto.\"); </script>";
echo "<script language=Javascript> location.href=\"index.php\"; </script>";
}
mysql_close();
?>
el cual recibe los datos de un formulario en html......pues bien al probarlo tanto local como en la web en si me sale este error, este bien los datos del formulario o no :

Warning: session_start() [function.session-start]: Cannot send session cookie - headers already sent by (output started at C:\AppServ\www\validar_usuario.php:1) in C:\AppServ\www\validar_usuario.php on line 2

el caso que lei esto :

PHP está informando de que no puede activar los cookies en el navegador del usuario, porque las cabeceras ya han sido enviadas. Simplemente por la existencia de una línea en blanco. Como medida práctica, no dejes espacios ni antes del inicio del script, ni después de la finalización.

lo probe y nada.....

tambien lei esto :

Debes poner session_start(); en cada archivo que quieras que se muestre una vez que se haga secion, esto antes de cualquier linea de codigo html


lo probe y nada sigue el mismo error...que es lo que me falta hacer...??
  #2 (permalink)  
Antiguo 11/11/2009, 18:58
 
Fecha de Ingreso: octubre-2009
Mensajes: 83
Antigüedad: 14 años, 6 meses
Puntos: 1
Respuesta: session_start();

Prueba con @session_start(); en vez de session_start();
  #3 (permalink)  
Antiguo 11/11/2009, 19:02
Avatar de David
Moderador
 
Fecha de Ingreso: abril-2005
Ubicación: In this planet
Mensajes: 15.720
Antigüedad: 19 años
Puntos: 839
Respuesta: session_start();

Hola, Mathip. La @ lo único que hará es ocultar el error, no solucionarlo.

En cuanto al problema, revisa que no haya ningún espacio antes de <?php, ya que el problema que indica es que ya se envió una salida al navegador antes de llamar a session_start(). Si los archivos están guardados como UTF-8, debes guardarlos sin BOM.
__________________
Por favor, antes de preguntar, revisa la Guía para realizar preguntas.
  #4 (permalink)  
Antiguo 14/11/2009, 20:53
 
Fecha de Ingreso: octubre-2009
Mensajes: 83
Antigüedad: 14 años, 6 meses
Puntos: 1
Respuesta: session_start();

Yo entendi mal pense que el script funcionaba pero que mandaba el warning y quedaba feo en la pagina.Pido disculpas
  #5 (permalink)  
Antiguo 16/11/2009, 08:48
Avatar de jackson666  
Fecha de Ingreso: noviembre-2009
Ubicación: Buenos Aires, Argentina
Mensajes: 1.971
Antigüedad: 14 años, 5 meses
Puntos: 65
Respuesta: session_start();

Fijate de tener guardado ese archivo con codificacion ANSI
  #6 (permalink)  
Antiguo 16/11/2009, 08:56
 
Fecha de Ingreso: diciembre-2008
Mensajes: 805
Antigüedad: 15 años, 4 meses
Puntos: 20
Respuesta: session_start();

fijate en el php.ini donde dice session, debes configurar, por que lo que te esta diciendo ahi es que ya esta comenzado la session

session.auto_start = 0
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 00:36.