Précédent   Forum des professionnels en informatique > PHP > Langage > Débuter
Débuter Forum d'entraide pour débuter en PHP. Avant de poster -> Cours PHP, FAQ PHP, Outils PHP, etc.
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 14/01/2012, 13h43   #1
Débutant
 
Homme Laurent
Webmaster
Inscription : octobre 2006
Messages : 2 873
Détails du profil
Informations personnelles :
Nom : Homme Laurent
Âge : 48
Localisation : France, Isère (Rhône Alpes)

Informations professionnelles :
Activité : Webmaster
Secteur : Industrie

Informations forums :
Inscription : octobre 2006
Messages : 2 873
Points : 1 320
Points : 1 320
Par défaut éliminer warning par bufférisation sortie

Bonjour,

j'ai un fichier PHP qui provoque ce warning :
Citation:
Warning: Cannot modify header information - headers already sent by (output started at /homepages/20/d357470176/htdocs/fr/dossier1/test2.php:8) in /homepages/20/d357470176/htdocs/fr/dossier1/common.php on line 59
Pour éliminer le warning, j'ai rajouté une bufférisation de la sortie dans "common.php" : (<?php ob_start();...contenu...ob_end_flush();?>) en pensant que ça éliminerait le warning, mais il n'en est rien ; que faudrait-il faire pour éliminer ce warning ? (sachant que si je mets la bufférisation de sortie dans test2.php, ça provoque une erreur 404 sur refresh de la page...)
__________________
Il vaut mieux viser la perfection et la manquer que viser l'imperfection et l'atteindre. - Bertrand Russell
laurentSc est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 14/01/2012, 13h56   #2
Responsable Développement Web

 
Avatar de Bovino
 
Homme Didier Mouronval
Développeur Web
Inscription : juin 2008
Messages : 13 808
Détails du profil
Informations personnelles :
Nom : Homme Didier Mouronval
Âge : 41
Localisation : France, Gironde (Aquitaine)

Informations professionnelles :
Activité : Développeur Web
Secteur : High Tech - Éditeur de logiciels

Informations forums :
Inscription : juin 2008
Messages : 13 808
Points : 35 789
Points : 35 789
Ben... tu pourrais te contenter de corriger ton code pour qu'il n'envoie plus ce warning
__________________
Pas de question technique par MP !
Tout le monde peut participer à developpez.com, vous avez une idée, contactez-moi !
Vous possédez un blog et aimeriez diffuser vos billets sur le forum, contactez-moi !
Mes formations video2brain : La formation complète sur JavaScriptJavaScript et le DOM par la pratiquePHP 5 et MySQL : les fondamentaux
Mon livre sur jQuery
Bovino est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 14/01/2012, 14h32   #3
Débutant
 
Homme Laurent
Webmaster
Inscription : octobre 2006
Messages : 2 873
Détails du profil
Informations personnelles :
Nom : Homme Laurent
Âge : 48
Localisation : France, Isère (Rhône Alpes)

Informations professionnelles :
Activité : Webmaster
Secteur : Industrie

Informations forums :
Inscription : octobre 2006
Messages : 2 873
Points : 1 320
Points : 1 320
Oui...sauf que ce n'est pas mon code, car j'intègre un forum PHPBB et j'ai beau regarder le code, je n'ai pas vu de sorties, mais comme le code contient plein de includes qui contiennent eux-mêmes des includes, je n'ai pas envie de passer ma journée à chercher (et à râter l'important ). Donc comment t'y prendrais-tu dans ce cas ?
__________________
Il vaut mieux viser la perfection et la manquer que viser l'imperfection et l'atteindre. - Bertrand Russell
laurentSc est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 14/01/2012, 21h56   #4
Membre du Club
 
Homme Florian siles
Webmaster
Inscription : juin 2011
Messages : 59
Détails du profil
Informations personnelles :
Nom : Homme Florian siles
Localisation : France, Var (Provence Alpes Côte d'Azur)

Informations professionnelles :
Activité : Webmaster
Secteur : Bâtiment Travaux Publics

Informations forums :
Inscription : juin 2011
Messages : 59
Points : 47
Points : 47
Enlêve les header(location) de tes pages, tu peux pas quand tu intégres phpBB à un site, à cause du session_start(). Ou vérifies que tu n'as pas 2 session_start() a cause des includes.
flozza est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 14/01/2012, 22h24   #5
Débutant
 
Homme Laurent
Webmaster
Inscription : octobre 2006
Messages : 2 873
Détails du profil
Informations personnelles :
Nom : Homme Laurent
Âge : 48
Localisation : France, Isère (Rhône Alpes)

Informations professionnelles :
Activité : Webmaster
Secteur : Industrie

Informations forums :
Inscription : octobre 2006
Messages : 2 873
Points : 1 320
Points : 1 320
Justement, la ligne qui génère le warning contient ça : header('Location: ' . $url);. Que faudrait-il mettre à la place de cette redirection ?
__________________
Il vaut mieux viser la perfection et la manquer que viser l'imperfection et l'atteindre. - Bertrand Russell
laurentSc est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 14/01/2012, 22h41   #6
Membre du Club
 
Homme Florian siles
Webmaster
Inscription : juin 2011
Messages : 59
Détails du profil
Informations personnelles :
Nom : Homme Florian siles
Localisation : France, Var (Provence Alpes Côte d'Azur)

Informations professionnelles :
Activité : Webmaster
Secteur : Bâtiment Travaux Publics

Informations forums :
Inscription : juin 2011
Messages : 59
Points : 47
Points : 47
C'est une ligne que tu as mis toi ou ça fait partie de phpBB ?
flozza est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 14/01/2012, 22h45   #7
Débutant
 
Homme Laurent
Webmaster
Inscription : octobre 2006
Messages : 2 873
Détails du profil
Informations personnelles :
Nom : Homme Laurent
Âge : 48
Localisation : France, Isère (Rhône Alpes)

Informations professionnelles :
Activité : Webmaster
Secteur : Industrie

Informations forums :
Inscription : octobre 2006
Messages : 2 873
Points : 1 320
Points : 1 320
Non, c'est du code phpBB (j'ai commenté la bufférisation de sortie que j'avais tenté)
__________________
Il vaut mieux viser la perfection et la manquer que viser l'imperfection et l'atteindre. - Bertrand Russell
laurentSc est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 14/01/2012, 22h59   #8
Membre du Club
 
Homme Florian siles
Webmaster
Inscription : juin 2011
Messages : 59
Détails du profil
Informations personnelles :
Nom : Homme Florian siles
Localisation : France, Var (Provence Alpes Côte d'Azur)

Informations professionnelles :
Activité : Webmaster
Secteur : Bâtiment Travaux Publics

Informations forums :
Inscription : juin 2011
Messages : 59
Points : 47
Points : 47
C'est dur à dire comme ça sans avoir les fichiers et le code de tes pages à toi. Mais je dirais que as du te tromper sur l'ordre d'include.
SI je récapitule, tu as dossier1/index.php, dossier2/index.php, et /index.php.
Dans index.php tu as:
include dossier1/index.php
include dossier2/index.php

SI c'est bien ça,ou as tu as insérer les lignes concernant phpBB ? Je suppose que c'est pour avoir un formulaire d'identification, qui corresponde aux membres de ton forum ?
flozza est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 14/01/2012, 23h11   #9
Débutant
 
Homme Laurent
Webmaster
Inscription : octobre 2006
Messages : 2 873
Détails du profil
Informations personnelles :
Nom : Homme Laurent
Âge : 48
Localisation : France, Isère (Rhône Alpes)

Informations professionnelles :
Activité : Webmaster
Secteur : Industrie

Informations forums :
Inscription : octobre 2006
Messages : 2 873
Points : 1 320
Points : 1 320
Pas exactement, et en fait, j'avais renommé les fichiers pour faire comme le commanditaire, mais comme ça ne sert à rien :
Citation:
dossier1->forum et dossier2->phpBB
et actuellement, dans "forum/index.php" une iframe : <iframe src="../phpbb/index.php" width="1130" height="1600" scrolling="yes"></iframe>. Et l'idée serait de mettre tout le code dans "forum/index.php" pour que le référencement puisse se faire sur les posts du forum.
Et ce que j'ai fait je le disais hier soir à 22h46. Et je n'ai pas touché au code de phpBB, donc notamment, pas aux include.
__________________
Il vaut mieux viser la perfection et la manquer que viser l'imperfection et l'atteindre. - Bertrand Russell
laurentSc est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 15/01/2012, 14h17   #10
Membre du Club
 
Homme Florian siles
Webmaster
Inscription : juin 2011
Messages : 59
Détails du profil
Informations personnelles :
Nom : Homme Florian siles
Localisation : France, Var (Provence Alpes Côte d'Azur)

Informations professionnelles :
Activité : Webmaster
Secteur : Bâtiment Travaux Publics

Informations forums :
Inscription : juin 2011
Messages : 59
Points : 47
Points : 47
Donc tu veux virer ce
Code html :
1
2
 
<iframe src="../phpbb/index.php" width="1130" height="1600" scrolling="yes"></iframe>

Et mettre par exemple
Code html :
1
2
 
<div style="width:1130;height:1600;overflow:auto;"><?php include("../phpbb/index.php"); ?></div>

C'est bien ça ?
flozza est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 15/01/2012, 16h57   #11
Candidat au titre de Membre du Club
 
Inscription : octobre 2011
Messages : 16
Détails du profil
Informations forums :
Inscription : octobre 2011
Messages : 16
Points : 13
Points : 13
Merci, avec ça:

Code :
<div style="width:1130;height:1600;overflow:auto;"><?php include("../phpbb/index.php"); ?></div>
La page produit ces:


Code :
1
2
3
4
5
6
7
8
9
Warning: include(./common.php) [function.include]: failed to open stream: No such file or directory in /homepages/20/d357470176/htdocs/ita/phpbb/index.php on line 20
 
Warning: include() [function.include]: Failed opening './common.php' for inclusion (include_path='.:/usr/lib/php5') in /homepages/20/d357470176/htdocs/ita/phpbb/index.php on line 20
 
Warning: include(./includes/functions_display.php) [function.include]: failed to open stream: No such file or directory in /homepages/20/d357470176/htdocs/ita/phpbb/index.php on line 21
 
Warning: include() [function.include]: Failed opening './includes/functions_display.php' for inclusion (include_path='.:/usr/lib/php5') in /homepages/20/d357470176/htdocs/ita/phpbb/index.php on line 21
 
Fatal error: Call to a member function session_begin() on a non-object in /homepages/20/d357470176/htdocs/ita/phpbb/index.php on line 24
J'ai déjà testé
Quoz15 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 15/01/2012, 17h31   #12
Débutant
 
Homme Laurent
Webmaster
Inscription : octobre 2006
Messages : 2 873
Détails du profil
Informations personnelles :
Nom : Homme Laurent
Âge : 48
Localisation : France, Isère (Rhône Alpes)

Informations professionnelles :
Activité : Webmaster
Secteur : Industrie

Informations forums :
Inscription : octobre 2006
Messages : 2 873
Points : 1 320
Points : 1 320
Non, Matteo (flozza : pseudo=quoz15, prénom italien=Matteo) ; donc pour Matteo, il manquait dans le répertoire ita/forum justement le répertoire includes et le fichier "common.php" ; je les ai rajoutés et les warnings ont disparu, par contre, il en reste un que je n'arrive pas à supprimer :
Citation:
Warning: Cannot modify header information - headers already sent by (output started at /homepages/20/d357470176/htdocs/fr/forum/index.php:8) in /homepages/20/d357470176/htdocs/fr/forum/common.php on line 59
et cette ligne 59 est : header('Location: ' . $url); ; donc flozza, si tu as une idée...
__________________
Il vaut mieux viser la perfection et la manquer que viser l'imperfection et l'atteindre. - Bertrand Russell
laurentSc est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 15/01/2012, 20h07   #13
Candidat au titre de Membre du Club
 
Inscription : octobre 2011
Messages : 16
Détails du profil
Informations forums :
Inscription : octobre 2011
Messages : 16
Points : 13
Points : 13


Merci Laurent

J'ai une idée mais sur qui ça ne servira à rien.

Le warning indique que n'est pas possible modifier la header? Et la page s'affiche également meme si le menu doit etre à dessus la bannière.

ça fa de l'inversion.

Ne passe pas par là le code à modifier?
Quoz15 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 15/01/2012, 20h50   #14
Débutant
 
Homme Laurent
Webmaster
Inscription : octobre 2006
Messages : 2 873
Détails du profil
Informations personnelles :
Nom : Homme Laurent
Âge : 48
Localisation : France, Isère (Rhône Alpes)

Informations professionnelles :
Activité : Webmaster
Secteur : Industrie

Informations forums :
Inscription : octobre 2006
Messages : 2 873
Points : 1 320
Points : 1 320
Matteo, le "header" évoqué ici n'a rien à voir avec l'en-tête de ta page : c'est un header HTTP et ça ne fait pas partie du code (du moins, il me semble)
__________________
Il vaut mieux viser la perfection et la manquer que viser l'imperfection et l'atteindre. - Bertrand Russell
laurentSc est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 15/01/2012, 21h29   #15
Candidat au titre de Membre du Club
 
Inscription : octobre 2011
Messages : 16
Détails du profil
Informations forums :
Inscription : octobre 2011
Messages : 16
Points : 13
Points : 13
Citation:
le "header" évoqué ici n'a rien à voir avec l'en-tête de ta page : c'est un header HTTP et ça ne fait pas partie du code (du moins, il me semble)
En effect je ne disait pas l'en-tt de la page mais le menu qui dans les autres pages si trouve au dessus la bannière et dans la page du "warning" passe au dessous. Ca l'inversion.
Bon, ça ne changera rien mais dans le cas qui tu n'as pas aperçu, je l'ai écrit car certain fois passe pour des petit détail la solution...

Je me trompe encore, mais la ligne 59 c'est une ligne pour la rédirection des langues ou pas?
Quoz15 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 15/01/2012, 21h47   #16
Débutant
 
Homme Laurent
Webmaster
Inscription : octobre 2006
Messages : 2 873
Détails du profil
Informations personnelles :
Nom : Homme Laurent
Âge : 48
Localisation : France, Isère (Rhône Alpes)

Informations professionnelles :
Activité : Webmaster
Secteur : Industrie

Informations forums :
Inscription : octobre 2006
Messages : 2 873
Points : 1 320
Points : 1 320
Citation:
Je me trompe encore, mais la ligne 59 c'est une ligne pour la rédirection des langues ou pas?
Tu te trompes certainement , vu qu'il n'y a pas de choix de la langue : dans phpBB, tu as créé 3 sous-forums (ita, fr et en).
__________________
Il vaut mieux viser la perfection et la manquer que viser l'imperfection et l'atteindre. - Bertrand Russell
laurentSc est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 15/01/2012, 21h52   #17
Membre du Club
 
Homme Florian siles
Webmaster
Inscription : juin 2011
Messages : 59
Détails du profil
Informations personnelles :
Nom : Homme Florian siles
Localisation : France, Var (Provence Alpes Côte d'Azur)

Informations professionnelles :
Activité : Webmaster
Secteur : Bâtiment Travaux Publics

Informations forums :
Inscription : juin 2011
Messages : 59
Points : 47
Points : 47
Bon alors comment ça se présente au final ?

Que contient forum/index.php dans sa totalité?

Comment est affiché forum/index.php => Directement, ou il est inclu par une page parent ?

Quel problème persiste ?
flozza est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 15/01/2012, 22h30   #18
Candidat au titre de Membre du Club
 
Inscription : octobre 2011
Messages : 16
Détails du profil
Informations forums :
Inscription : octobre 2011
Messages : 16
Points : 13
Points : 13
Citation:
Bon alors comment ça se présente au final ?
Mais le problème persite...
Quoz15 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 15/01/2012, 22h49   #19
Débutant
 
Homme Laurent
Webmaster
Inscription : octobre 2006
Messages : 2 873
Détails du profil
Informations personnelles :
Nom : Homme Laurent
Âge : 48
Localisation : France, Isère (Rhône Alpes)

Informations professionnelles :
Activité : Webmaster
Secteur : Industrie

Informations forums :
Inscription : octobre 2006
Messages : 2 873
Points : 1 320
Points : 1 320
Le problème qui persiste est celui que je mentionnais à 17h31 et ce que je voudrais faire est exactement ce que tu décrivais à 14h17.
La partie utile de forum/index.php est justement
Code :
1
2
...<p style="text-align:justify"><div style="width:1130;height:1600;overflow:auto;"><?php include("../phpbb/index.php"); ?></div> 
</p>...
Le reste étant en gros la partie head, le bandeau, le menu, l'en-tête et le pied de page et ce fichier est affiché directement, mais le problème se situe, d'après moi, dans phpbb/index.php (donc du code importé), puisque je viens, pour voir, de créer test.php :
Code :
1
2
3
4
5
6
7
8
9
10
11
12
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
  <meta content="text/html; charset=ISO-8859-1"
 http-equiv="content-type">
  <title></title>
</head>
<body>
<p style="text-align:justify"><div style="width:1130;height:1600;overflow:auto;"><?php include("../phpbb/index.php"); ?></div> 
</p>
</body>
</html>
avec lequel on a le même warning...(mais on ne l'a pas (encore heureux), si on appelle directement http://www.telepamedia.com/ita/phpbb/index.php)
__________________
Il vaut mieux viser la perfection et la manquer que viser l'imperfection et l'atteindre. - Bertrand Russell
laurentSc est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 16/01/2012, 00h16   #20
Membre du Club
 
Homme Florian siles
Webmaster
Inscription : juin 2011
Messages : 59
Détails du profil
Informations personnelles :
Nom : Homme Florian siles
Localisation : France, Var (Provence Alpes Côte d'Azur)

Informations professionnelles :
Activité : Webmaster
Secteur : Bâtiment Travaux Publics

Informations forums :
Inscription : juin 2011
Messages : 59
Points : 47
Points : 47
Le problème c'est que dans index.php à la ligne 8 tu as quelque chose qui embete le header(location) de common.php, si je lis l'erreur.
Qu'est ce qu'il y a aux lignes 7, 8 et 9 de forum/index.php ?

Et pour savoir, pourquoi vouloir inclure le forum dans une autre page, qui apparemment est vide?...
flozza est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 23h30.


 
 
 
 
Partenaires

Hébergement Web