Problème session_start

Fermé
elo555 - 28 juin 2009 à 12:20
 Thierry du 50 - 13 juil. 2009 à 19:48
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

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
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
Attends, j'essaye sur mon serveur.
0
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

Vous n’avez pas trouvé la réponse que vous recherchez ?

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

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

essaye de mettre $HTTP_SESSION_VARS['...'] à la place de $_SESSION['...']
0
Thierry du 50
13 juil. 2009 à 19:48
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