2015-08-01 1 views
0

Obtenir cette erreur stupide encore et absolument aucun en-tête envoyés autre que celui-ci, encore et encore (imprime 5 fois chaque page de temps est RAN)têtes ont déjà été envoyés Erreur sans en-tête envoyés

Cannot modify header information - headers already sent by (output started at /home/xx/public_html/xx/index.php:1) in /home/xx/public_html/xx/index.php on line 1 

mon index.php:

<?php header('Content-Type:text/html; charset=UTF-8'); 
      require("load.php");?> 
      <!DOCTYPE HTML> 
      <html> 
      <head> 

mon load.php:

<?php 
define("ABS_PATH", $_SERVER['DOCUMENT_ROOT']); 
include_once (ABS_PATH .'/assets/x/la.php'); 
require(ABS_PATH ."/assets/x/go.php"); 
///some more variables;?> 

mon la.php:

<?php 
session_start(); 
header('Cache-control: private'); // IE 6 FIX 

if(isSet($_GET['lang'])) 
{ 
$lang = $_GET['lang']; 
} 
/// more code?> 

Je n'ai aucune idée de ce qui se passe.

EDIT: a trouvé le problème. Il y avait un espace unique flippant après mon ?>. Je l'ai enlevé et voila, il est maintenant réparé. Merci obama

+0

'header ('Content-Type: text/html; jeu de caractères = UTF-8');' Pourquoi cette ligne est-elle obligatoire en haut de votre page index.php? – Akshay

+0

Les en-têtes sont envoyés lorsque vous affichez quelque chose dans une page. 'session_Start' devrait aussi être en haut d'une page. –

+2

Vous avez probablement des caractères d'espaces avant ou après vos balises php. S'il n'y a que du contenu PHP dans un fichier, supprimez la balise de fin. Et vérifiez que le fichier commence par Karl

Répondre

0

Vous devez utiliser session_start avant que les en-têtes aient été envoyés.

Mettre session_start; au-dessus header('Content-Type:text/html; charset=UTF-8');

0

Je vois ici des espaces. Essayez ce code.

<?php 
session_start(); 
header('Content-Type:text/html; charset=UTF-8'); 
require("load.php");?> 
<!DOCTYPE HTML> 
<html> 
<head> 

En outre, votre session doit être démarré avant d'envoyer les en-têtes.

+0

'Erreur d'analyse: syntaxe erreur, inattendu 'en-tête' (T_STRING) 'est l'erreur que j'obtiens avec votre solution –

+0

J'ai oublié d'ajouter un'; 'in swiftness. Réessayez, s'il vous plaît. – Akshay