Problème session_start

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. 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
    1. Au cas où, on sait jamais

      essaye de mettre $HTTP_SESSION_VARS['...'] à la place de $_SESSION['...']
      1. OK, ne connaissant pas free, je ne peux pas t'aider davantage. Désolé !
        Bonne chance ;)
        1. oui justement, moi ca marchait sur wamp... mais sur free non...
          bizarre....

          Merci à toi :)
          1. 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 :/
            1. 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...
              1. 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'