Problème session_start

elo555 -  
 Thierry du 50 -
Bonjour,
je suis totalement désespérée je reduis au plus simple mes session_start et ca ne marche pas du tout... voila la page d'accueil super simple :
<?php session_start();?>
<?php
$_SESSION['coucou']="toto";

?>
<html>
<head>
<meta>

</head>
<body>
<p> saleut <?php echo $_SESSION['coucou'];?> !!!!</p>
<a href="test.php">Test</a>

</body>
</html>

et du coup voilà la page test.php :
<?php session_start();
$oups=$_SESSION['coucou'];
if($oups == '')
{
echo "pas de transmission";
}
else
{
echo soups;
}

?>

<html>
<head>
<meta>
</head>
<body>
<p>coucou !!</p>
</body>
</html>

et gros problème, quand je les transfère sur internet j'ai les 2 grosses erreurs suivantes :
Warning: session_start() [function.session-start]: Cannot send session cookie - headers already sent by (output started at /mnt/145/sda/6/8/usc.basket/www/Connexion/test.php:1) in /mnt/145/sda/6/8/usc.basket/www/Connexion/test.php on line 1

Warning: session_start() [function.session-start]: Cannot send session cache limiter - headers already sent (output started at /mnt/145/sda/6/8/usc.basket/www/Connexion/test.php:1) in /mnt/145/sda/6/8/usc.basket/www/Connexion/test.php on line 1

Et en plus il me renvoie "pas de transmission" donc en gros le liens entre les 2 pages ne se fait pas...

Donc voilà, si jamais vous avez une idée....

Merci beaucoup d'avance !!!

8 réponses

  1. enox
     
    Salut,
    Voilà comment je coderais ces pages à ta place :

    Page d'accueil :
    <?
    session_start();

    // là tu avais fermé la balise pour la réouvrir en dessous, je comprends pas pourquoi.

    $_SESSION['coucou']="toto";

    // au lieu de fermer la balise php, pourquoi pas utilise un echo ?

    echo '
    <html>
    <head>
    <meta>

    </head>
    <body>
    <p> saleut '.$_SESSION['coucou'].' !!!!</p>
    <a href="test.php">Test</a>

    </body>
    </html>
    ';
    ?>


    Page test :
    <?
    session_start();

    $oups = $_SESSION['coucou'];

    if($oups == '')
    {
    echo "pas de transmission";
    }
    else
    {
    echo $oups; // tu avais marqué "soups"
    }

    ?>

    <html>
    <head>
    <meta>
    </head>
    <body>
    <p>coucou !!</p>
    </body>
    </html>


    Voilà, si ça peut t'aider.
    J'ai pas testé.

    Ciao'
    0
  2. elo555
     
    Merci a toi, mais ca ne marche toujours pas...
    Je n'ai pas précisé mon site se fait sur free, mais j'ai bien pensé à créer mon dossier sessions à la racine du site...
    0
  3. enox
     
    Bon alors, chez moi ça marche, je te donne les codes de mes pages :

    accueil.php :
    <?
    session_start();

    // là tu avais fermé la balise pour la réouvrir en dessous, je comprends pas pourquoi.

    $_SESSION['coucou'] = "toto";

    // au lieu de fermer la balise php, pourquoi pas utilise un echo ?

    echo '
    <html>
    <head>
    <title>//</title>
    </head>
    <body>

    Salut '.$_SESSION['coucou'].' !<br>
    <br>
    <a href="./test.php">Test</a>

    </body>
    </html>
    ';
    ?>


    test.php :
    <?
    session_start();

    echo '
    <html>
    <head>
    <title>//</title>
    </head>
    <body>
    ';

    $oups = $_SESSION['coucou'];

    if($oups == '')
    {
    echo "pas de transmission";
    }
    else
    {
    echo $oups; // tu avais marqué "soups"
    }

    echo '
    Coucou !
    </body>
    </html>
    ';

    ?>


    Si ça marche pas, je ne vois plus qu'un problème : free & les sessions :/
    0
  4. Vous n’avez pas trouvé la réponse que vous recherchez ?

    Posez votre question
  5. elo555
     
    oui justement, moi ca marchait sur wamp... mais sur free non...
    bizarre....

    Merci à toi :)
    0
  6. enox
     
    OK, ne connaissant pas free, je ne peux pas t'aider davantage. Désolé !
    Bonne chance ;)
    0
  7. enox
     
    Au cas où, on sait jamais

    essaye de mettre $HTTP_SESSION_VARS['...'] à la place de $_SESSION['...']
    0
  8. Thierry du 50
     
    Bonsoir,

    Je ne sais pas si c'est toujours d'actualité, mais je crois qu'il faut créer un dossier appelé "sessions" à la racine du site chez free.fr
    Thierry
    0