Foros del Web » Programando para Internet » PHP »

(1) echo string;(2)SESSION_START(); y no devuelve ERROR, ¿por que?

Estas en el tema de (1) echo string;(2)SESSION_START(); y no devuelve ERROR, ¿por que? en el foro de PHP en Foros del Web. Hola. Estas son las lineas de mi archivo.php: Código PHP: <?php echo  str_repeat ( ":-1\n" ,  5 ); header ( 'Content-Type: application/xhtml+xml' ); echo  str_repeat ( ...
  #1 (permalink)  
Antiguo 16/11/2016, 22:07
 
Fecha de Ingreso: febrero-2004
Mensajes: 1.987
Antigüedad: 20 años, 2 meses
Puntos: 22
(1) echo string;(2)SESSION_START(); y no devuelve ERROR, ¿por que?

Hola.

Estas son las lineas de mi archivo.php:
Código PHP:
<?php
echo str_repeat(":-1\n"5);
header('Content-Type: application/xhtml+xml');
echo 
str_repeat(":-2\n"5);
    
SESSION_START();
    echo 
'JOI!';
?>
y resulta que NUNCA me retorna errores ni warnings...

¿que tengo mal configurado?

¿cómo puedo detectar el error del servidor?


Gracias!

(Windows 7)


En PHP.ini tengo:

Código PHP:
display_errors On
error_reporting 
E_ALL & ~E_DEPRECATED & ~E_STRICT 
  #2 (permalink)  
Antiguo 16/11/2016, 22:28
Avatar de AngelKrak  
Fecha de Ingreso: noviembre-2014
Mensajes: 917
Antigüedad: 9 años, 5 meses
Puntos: 91
Respuesta: (1) echo string;(2)SESSION_START(); y no devuelve ERROR, ¿por que?

algo mal debes de tener, por que a mi si me muestra error jajaja xD
Cita:
This page contains the following errors:

error on line 6 at column 8: Opening and ending tag mismatch: meta line 0 and head
Below is a rendering of the page up to the first error.
  #3 (permalink)  
Antiguo 17/11/2016, 05:29
 
Fecha de Ingreso: octubre-2010
Ubicación: España
Mensajes: 1.007
Antigüedad: 13 años, 6 meses
Puntos: 123
Respuesta: (1) echo string;(2)SESSION_START(); y no devuelve ERROR, ¿por que?

El error es claro no se debe enviar nada antes de las cabeceras.

Debería de ir así.
Código PHP:
<?php
header
('Content-Type: application/xhtml+xml');
echo 
str_repeat(":-1\n"5);
echo 
str_repeat(":-2\n"5);
    
SESSION_START();
    echo 
'JOI!';
?>
Sí miras el manual, indica lo siguiente:
Cita:
Recuerde que header() debe ser llamado antes de mostrar nada por pantalla, etiquetas HTML, líneas en blanco desde un fichero o desde PHP. Es un error muy común leer código con funciones como include o require, u otro tipo de funciones de acceso de ficheros que incluyen espacios o líneas en blanco que se muestran antes de llamar a la función header(). Sucede el mismo problema cuando se utiliza un solo fichero PHP/HTML.
Y ya por ser quisquilloso, me duele la vista ver ese SESSION_START en mayúsculas, aún que es perfectamente válido.
__________________
Unset($vida['malRollo']);
  #4 (permalink)  
Antiguo 17/11/2016, 06:19
 
Fecha de Ingreso: febrero-2004
Mensajes: 1.987
Antigüedad: 20 años, 2 meses
Puntos: 22
Respuesta: (1) echo string;(2)SESSION_START(); y no devuelve ERROR, ¿por que?

Cita:
Iniciado por xerifandtomas Ver Mensaje
El error es claro no se debe enviar nada antes de las cabeceras.
Mi pregunta es clara:
Código PHP:
...resulta que NUNCA me retorna errores ni warnings...

¿que tengo mal configurado?

¿cómo puedo detectar el error del servidor
  #5 (permalink)  
Antiguo 17/11/2016, 10:31
 
Fecha de Ingreso: octubre-2010
Ubicación: España
Mensajes: 1.007
Antigüedad: 13 años, 6 meses
Puntos: 123
Respuesta: (1) echo string;(2)SESSION_START(); y no devuelve ERROR, ¿por que?

Quizás leyendo un poco el manual aclares tu duda.

Cita:
error_reporting

En PHP 5.3 o posterior, el valor predeterminado es E_ALL & ~E_NOTICE & ~E_STRICT & ~E_DEPRECATED. Este ajuste no muestra los niveles de error E_NOTICE, E_STRICT y E_DEPRECATED. Quizás quiera mostrarlos durante el desarrollo. Antes de PHP 5.3.0, el valor predeterminado es E_ALL & ~E_NOTICE & ~E_STRICT. en PHP, el valor predeterminado es E_ALL & ~E_NOTICE.
__________________
Unset($vida['malRollo']);

Última edición por xerifandtomas; 17/11/2016 a las 10:41
  #6 (permalink)  
Antiguo 17/11/2016, 15:46
 
Fecha de Ingreso: febrero-2004
Mensajes: 1.987
Antigüedad: 20 años, 2 meses
Puntos: 22
Respuesta: (1) echo string;(2)SESSION_START(); y no devuelve ERROR, ¿por que?

Cita:
Iniciado por xerifandtomas Ver Mensaje
Quizás leyendo un poco el manual aclares tu duda.
Pero cuantas veces necesitas LEER????

Ya he mencionado
Cita:
En PHP.ini tengo:
Código PHP:
Código PHP:
display_errors On
error_reporting 
E_ALL & ~E_DEPRECATED & ~E_STRICT 
Presta mas atención!.
  #7 (permalink)  
Antiguo 17/11/2016, 20:37
Avatar de Triby
Mod on free time
 
Fecha de Ingreso: agosto-2008
Ubicación: $MX->Gto['León'];
Mensajes: 10.106
Antigüedad: 15 años, 8 meses
Puntos: 2237
Respuesta: (1) echo string;(2)SESSION_START(); y no devuelve ERROR, ¿por que?

Anarko, antes de quejarte, creo que deberías prestar más atención y cito la respuesta de xerifandtomas:

Cita:
En PHP 5.3 o posterior, el valor predeterminado es E_ALL & ~E_NOTICE & ~E_STRICT & ~E_DEPRECATED. Este ajuste no muestra los niveles de error E_NOTICE, E_STRICT y E_DEPRECATED.
Entonces, puedes probar a establecer error_reporting solamente en E_ALL o regresar al manual para ver si hay otras opciones.
__________________
- León, Guanajuato
- GV-Foto
  #8 (permalink)  
Antiguo 18/11/2016, 06:19
 
Fecha de Ingreso: febrero-2004
Mensajes: 1.987
Antigüedad: 20 años, 2 meses
Puntos: 22
Respuesta: (1) echo string;(2)SESSION_START(); y no devuelve ERROR, ¿por que?

Cita:
Iniciado por Triby Ver Mensaje
Anarkopuedes probar a establecer error_reporting solamente en E_ALL
Gracias Triby, éso tambien lo he realizado y algo "misterioso" sucede en éste servidor, pues NUNCA me ha sucedido tál cosa en ningún otro.

Como mencionaba, se trata de Windows 7 + Apache 2.4 + Php 5.4

Para mí es "un misterio"...
  #9 (permalink)  
Antiguo 18/11/2016, 11:22
Avatar de Triby
Mod on free time
 
Fecha de Ingreso: agosto-2008
Ubicación: $MX->Gto['León'];
Mensajes: 10.106
Antigüedad: 15 años, 8 meses
Puntos: 2237
Respuesta: (1) echo string;(2)SESSION_START(); y no devuelve ERROR, ¿por que?

Lo último que queda por suponer es que hay un buffer reteniendo la salida hasta completar determinada cantidad de bytes; por ahora no recuerdo dónde se modifica este comportamiento, pero ya tienes material para investigar.
__________________
- León, Guanajuato
- GV-Foto

Etiquetas: devuelve, echo, html
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 19:21.