Bufferisation avec php et header()

Consultez la formation à Google Analytics de WebRankInfo / Ranking Metrics

thierry8
WRInaute accro
WRInaute accro
 
Messages: 3251
Inscription: 11 Juil 2005

Bufferisation avec php et header()

Message le Sam Avr 08, 2006 20:33

Bonsoir,

j'ai un problème que je n'arrive pas à résoudre un problème avec l'utilisation de la bufferisation et l'envoi d'entête.

Voici en gros le code :
Code: Tout sélectionner
    ob_start();  // demarrage de la bufferisation

    // traitement des données, etc...

    $donnees = ob_get_contents();  // recupération des données du buffer
    ob_end_clean();  // vidage du buffer

    // autre traitement

    si(erreur)
    {
        header("",true,500);
        exit('message d\'erreur !')
    }


Le problème est que lorsque j'utilise la bufferisation l'entête ne prend pas...
Comment faire pour utiliser la bufferisation tout en pouvant envoyer derrière l'entête souhaitée...?

En espérant que quelqu'un pourra m'aider.

gomoz
WRInaute discret
WRInaute discret
 
Messages: 230
Inscription: 29 Déc 2004

Message le Dim Avr 09, 2006 3:15

"entête ne prend pas"
kesako ?

c'est peut etre l'heure mais ma tete ne prend pas non plus... tu veux dire quoi ?

thierry8
WRInaute accro
WRInaute accro
 
Messages: 3251
Inscription: 11 Juil 2005

Message le Dim Avr 09, 2006 8:37

Après la bufferisation, l'entete n'a pas l'air d'être envoyé.

A savoir que je n'ai pas d'erreur parce que le header() est mal placé, cela n'a rien à voir. Seulement lorsque je regarde les entêtes sous firefox, il me donne le code 200 alors que je devrait avoir celui que je retourne soit 500...

gomoz
WRInaute discret
WRInaute discret
 
Messages: 230
Inscription: 29 Déc 2004

Message le Dim Avr 09, 2006 20:46

En gros tu fais ca et tu n'as pas le code 500 ?


ob_start();
$donnees = ob_get_contents();
ob_end_clean(); // vidage du buffer
header("",true,500);


c'est bizzard... le code devrait passer pourtant. Tu as essayé de faire ca pour voir ?

ob_start();
ob_start();
//traitement
$donnees = ob_get_contents();
ob_end_clean(); // vidage du buffer
header("",true,500);
ob_end_flush();


Si vous avez aimé cette discussion, partagez-la sur vos réseaux sociaux préférés :

Formation recommandée sur ce thème :

Formation Google Analytics : en 2 jours, apprenez comment exploiter l'essentiel des possibilités de l'outil de mesure d'audience de Google. Formation animée par les experts Google Analytics de Ranking Metrics.

Tous les détails sur le site Ranking Metrics : programme, prix, dates et lieux, inscription en ligne.

Lectures recommandées sur ce thème :



Qui est en ligne

Utilisateurs parcourant ce forum: Aucun utilisateur enregistré et 0 invités