[php] Pb Redirection (Header) apres fermeture

Résolu
Bonjour,

Bonjour à tous!!

Voilà j'ai un petit problème, et je tiens à dire que je ne suis pas d'accord avec le proverbe qui dit : "Tout ce qui est petit est mignon!"

Bref, je cherche à faire une redirection apres la fermeture d'une session mais j'ai le message d'erreure suivant:
Code :

Warning: Cannot modify header information - headers already sent by (output started at C:\wamp\www\Ace Of Spades\Index.php:5) in C:\wamp\www\Ace Of Spades\Logout.php on line 14

Voici la page de code d'ou vien l'erreur:
Code :

<?php
//On récupere la page qui étais en cours de visite
$Page=$_GET["PAGEVISIT"];

// On écrase le tableau de session
$_SESSION = array();

// Destruction du tableau de session
unset($_SESSION);

// On détruit la session
session_destroy();

//on redirige vers la page en cours
header("Location:Index.php?PAGE=$Page");

?>

Alors je vois pas ce que j'ai mal fait

Pour plus d'explication :
Cette page (logout.php) est appelé losque je clique sur un lien dont voici le code:
Code :

<a href='Index.php?PAGE=Logout&PAGEVISIT=$Page'>Logout</a>

Voila, ca fait 8h que je me bat avec mon PC pour qu'il fasse fonctionner ce code tout seul (on sait jamais) mais il est plus fort que moi!!!
please help me!!!
Configuration: Windows XP
Firefox 2.0.0.11

5 réponses

  1. Bonjour

    Si j'en crois le message d'erreur, le problème est dans index.php. Peux-tu nous le montrer?
    0
    1. voici le code de index.php (désolé pour le temps d'attente)

      <?php
      session_start();

      //=============================================================//

      //===============on récupère la page à afficher================//

      $Page=$_GET["PAGE"];

      //=============================================================//
      ?>

      <!--Le début de la page HTML -->
      <HTML>

      <HEAD>
      <TITLE>Ace Of Spades</TITLE>
      <!--Style CSS à appliquer-->
      <LINK rel=stylesheet type="text/css" href="StyleSite.css">
      <SCRIPT LANGUAGE="Javascript" SRC="Script.js"></script>

      </HEAD>

      <BODY>

      <div CLASS=Site>";

      <?php
      INCLUDE("Banniere.php");
      ?>

      <?php
      INCLUDE ("MenuHaut.php");
      ?>

      <DIV class=Page&Menu>
      <?php
      INCLUDE ("MenuGauche.php");
      ?>

      <?php
      if ($Page==""){
      echo "<DIV class=Page>";
      INCLUDE ("Accueil.php");//On affiche la page d'accueil
      echo"</DIV>";

      }else{ //sinon on afiche la page demandée

      echo "<DIV class=Page>";
      INCLUDE ($Page.".php");
      echo"</DIV>";
      }

      ?>

      </DIV>

      <DIV class=BasPage>
      <?php
      INCLUDE("BasPage.php");
      ?>
      </DIV>
      </DIV>

      </BODY>

      </HTML>
      0
      1. Bonjour,

        avant ton header tu ne doit avoir aucune balise ou caractère HTML envoyé au navigateur

        Vérifies dans ton script, notamment si il y a des include avant de fichier qui pourraient en contenir.

        @lain
        0
        1. Les numéros de ligne ne semblent pas coller par rapport au message d'erreur

          Le premier script que tu as montré est bien celui de C:\wamp\www\Ace Of Spades\Logout.php ?
          Quelle ligne est la ligne 14 ? N'y a-t-il pas un "include" ou autre "require" ?

          celui du messge 2 est bien C:\wamp\www\Ace Of Spades\Index.php . Quelle est la ligne 5
          0
          1. Ca y est!!! merci pour votre aide, en fait j'avai une erreur d'appel de la page logout.php, effectivement il y avait des sorties vers le client avant le script de logout!!
            Lol quand on à la tete dans le code on à du mal a prendre du recul!!

            Merci
            0