elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: (TUTORIAL) Aprende a emular Sentinel Dongle By Yapis


+  Foro de elhacker.net
|-+  Programación
| |-+  Desarrollo Web
| | |-+  PHP (Moderador: #!drvy)
| | | |-+  ¿error header?
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: ¿error header?  (Leído 2,408 veces)
kosis157

Desconectado Desconectado

Mensajes: 186



Ver Perfil
¿error header?
« en: 29 Octubre 2007, 21:02 pm »

Hola tengo un problema antes utilizaba el EasyPHP pero ahora como en mi colegio tengo instalado el XAMPP me puse en mi ordenador, con el EasyPHP me iba todo correctamente pero ahora con el XAMPP me tira dos errores:
El código es:
Código
  1. <?php
  2. if(isset($_POST['login'])){
  3. $redir=$_SERVER['HTTP_REFERER'];
  4. $url=explode("?",$redir);
  5. $redir=$url[0];
  6.  
  7. $user=$_POST['user'];
  8. $pass=$_POST['pass'];
  9. if($user==""){
  10. header ("Location: $redir?error_login=0");
  11. }
  12. if($pass==""){
  13. header ("Location: $redir?error_login=0");
  14. }
  15. /** comprobem que el usuario y contraseña estan a la BD*/
  16. include("../conexion.php");
  17. $sql="SELECT `id`,`pass`,`carrec`,`ban`,`last_day`,`entradas`,`alta` FROM usuari";
  18. $sql .=" WHERE `nick` LIKE '".$user."' LIMIT 1";
  19. $result=mysql_query($sql);
  20. if(mysql_num_rows($result)==0){
  21. header ("Location: $redir?error_login=1");
  22. }
  23. $row=mysql_fetch_array($result);
  24. if($row[2]==1){//comprobem k lusuari no estigui ban 1-> BAN; 0-> no ban
  25. header ("Location: $redir?error_login=2");
  26. }
  27. /*comprobem k estigui de alta*/
  28. if($row['alta']!=1){
  29. header ("Location: $redir?error_login=4");
  30. }
  31. /** comprovem si la contraseña coincideix*/
  32. if($pass==$row['pass']){
  33. $data=date("d/m/Y");
  34. //actualitzem al ultima visita
  35. $sql="UPDATE `usuari` SET `last_day` = '".$data."',`entradas`=`entradas`+1, `ip`='".$_SERVER['REMOTE_ADDR']."' WHERE `nick` = '".$user."' LIMIT 1" ;
  36. mysql_query($sql);
  37. /*--> linea 42*/session_start();
  38. $_SESSION['id']=$row['id'];
  39. $_SESSION['user']=$user;
  40. $_SESSION['pass']=$pass;
  41. $_SESSION['carrec']=$row['carrec'];
  42. $_SESSION['entradas']=$row['entradas'];
  43. $url="../index.php?".session_name()."=".session_id();
  44. /*--> linea 49*/header ("Location: $url");
  45. }else{
  46. header ("Location: $redir?error_login=3");
  47. }
  48. }else{
  49. header("Location: login.php");
  50. }
  51. ?>
  52.  
Warning: session_start() [function.session-start]: Cannot send session cache limiter - headers already sent (output started at C:\wwwroot\web\conexion.php:4) in C:\wwwroot\web\usuarios\progress.php on line 42

Warning: Cannot modify header information - headers already sent by (output started at C:\wwwroot\web\conexion.php:4) in C:\wwwroot\web\usuarios\progress.php on line 49



En línea

дٳŦ٭
GNU/Linux Infrastructure Specialist
Ex-Staff
*
Desconectado Desconectado

Mensajes: 5.110


Ver Perfil WWW
Re: ¿error header?
« Respuesta #1 en: 30 Octubre 2007, 04:56 am »

No hagas echo de nada antes de tirar la sesión.

Suerte


En línea

kosis157

Desconectado Desconectado

Mensajes: 186



Ver Perfil
Re: ¿error header?
« Respuesta #2 en: 30 Octubre 2007, 15:54 pm »

No hagas echo de nada antes de tirar la sesión.

Suerte
Pero esque en el código no hay ningun echo y luego el error del header?
En línea

SawMe

Desconectado Desconectado

Mensajes: 15


Ver Perfil
Re: ¿error header?
« Respuesta #3 en: 30 Octubre 2007, 16:27 pm »

session_start(); al prinicipio del script  ;)
En línea

eLank0
eLhAcKeR r00Lz


Desconectado Desconectado

Mensajes: 1.062



Ver Perfil WWW
Re: ¿error header?
« Respuesta #4 en: 30 Octubre 2007, 17:34 pm »

Deberías de tratar las cookies y las sesiones antes de cualquier código HTML y poner session_start() al principio del script para que cargue las sesiones.

S2
En línea

kosis157

Desconectado Desconectado

Mensajes: 186



Ver Perfil
Re: ¿error header?
« Respuesta #5 en: 30 Octubre 2007, 19:04 pm »

Vale y el error del header? :huh:
En línea

SawMe

Desconectado Desconectado

Mensajes: 15


Ver Perfil
Re: ¿error header?
« Respuesta #6 en: 30 Octubre 2007, 23:09 pm »

el error del header lo tira por el error de la sesion  :o

aver, php envia headers siempre y cuando no haya ni 1 sola salida de texto, ya sea error o cualquier cosa

ya no debe de pasar nada supongo
En línea

kosis157

Desconectado Desconectado

Mensajes: 186



Ver Perfil
Re: ¿error header?
« Respuesta #7 en: 31 Octubre 2007, 21:04 pm »

entonces el código me quedaría así:
Código
  1. <?php
  2. if(isset($_POST['login'])){
  3. $redir=$_SERVER['HTTP_REFERER'];
  4. $url=explode("?",$redir);
  5. $redir=$url[0];
  6.  
  7. $user=$_POST['user'];
  8. $pass=$_POST['pass'];
  9. if($user==""){
  10. header ("Location: $redir?error_login=0");
  11. }
  12. if($pass==""){
  13. header ("Location: $redir?error_login=0");
  14. }
  15. /** comprobem que el usuario y contraseña estan a la BD*/
  16. include("../conexion.php");
  17. $sql="SELECT `id`,`pass`,`carrec`,`ban`,`last_day`,`entradas`,`alta` FROM usuari";
  18. $sql .=" WHERE `nick` LIKE '".$user."' LIMIT 1";
  19. $result=mysql_query($sql);
  20. if(mysql_num_rows($result)==0){
  21. header ("Location: $redir?error_login=1");
  22. }
  23. $row=mysql_fetch_array($result);
  24. if($row[2]==1){//comprobem k lusuari no estigui ban 1-> BAN; 0-> no ban
  25. header ("Location: $redir?error_login=2");
  26. }
  27. /*comprobem k estigui de alta*/
  28. if($row['alta']!=1){
  29. header ("Location: $redir?error_login=4");
  30. }
  31. /** comprovem si la contraseña coincideix*/
  32. if($pass==$row['pass']){
  33. $data=date("d/m/Y");
  34. //actualitzem al ultima visita
  35. $sql="UPDATE `usuari` SET `last_day` = '".$data."',`entradas`=`entradas`+1, `ip`='".$_SERVER['REMOTE_ADDR']."' WHERE `nick` = '".$user."' LIMIT 1" ;
  36. mysql_query($sql);
  37. $_SESSION['id']=$row['id'];
  38. $_SESSION['user']=$user;
  39. $_SESSION['pass']=$pass;
  40. $_SESSION['carrec']=$row['carrec'];
  41. $_SESSION['entradas']=$row['entradas'];
  42. $url="../index.php?".session_name()."=".session_id();
  43. header ("Location: $url");
  44. }else{
  45. header ("Location: $redir?error_login=3");
  46. }
  47. }else{
  48. header("Location: login.php");
  49. }
  50. ?>

lo de la session_start arriba de todo pero el error persiste :(
En línea

Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines