Bonjour,

j'ai de nouveau un problème avec mes variables de session sur mon site perso hébergé chez Free.

Le code :
Code php : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
 
<?php
 
	if (isset($_SESSION)){
	session_destroy();
	}
	include 'haut.html';
	echo '
	<br/><br/>
	<div align=center id=connexion>
		<h2>Espace connexion </h2>
		<br/>
		<form name="connexion" method="post" action="connexion.php">
			<table align=center>
				<tr>
					<td align=center>Nom d\'utilisateur : </td>
					<td align=center><input type="text" name="pseudo" value="" size="30"></td>
				</tr>
				<tr align=center>
					<td align=center>Mot de passe : </td>
					<td align=center><input type="password" name="mdp" value="" size="30"></td>
				</tr>
			</table>
			<br/>
			<input type=submit name="connection" value="Connection">
		</form>
		<br/><br/>
		<img src="mediatheque.jpg" alt="mediatheque">
	</div>
	</body>
	';
	include 'bas.php';
?>

qui dirige donc vers :
Code php : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
<?php
	session_start();
	include 'fonctionBDD.php';
	if ($_POST["pseudo"] == "" || $_POST["mdp"] == "")
	{
		echo '
			<br/><br/><br/>
			<div align=center>
				Veuillez remplir les champs avant d\'essayer de vous connecter !
				';
				include 'index.php';
				echo'
			</div>

		';
	}
	else
	{	
		$requete = "SELECT pseudoUtilisateur, motDePasse, fonctionUtilisateur FROM utilisateur WHERE pseudoUtilisateur = '".$_POST["pseudo"]."' and motDePasse = '".$_POST["mdp"]."';";
		$resultat = mysql_query( $requete, $base );
		$row = mysql_fetch_assoc($resultat);
		if ($_POST["pseudo"] != $row["pseudoUtilisateur"])
			{
				echo '<br/><br/>';
				echo '<h3 align="center"> Mauvais nom d\'utilisateur </h3>';
				include 'index.php';
			}
		else
			{
				echo '<br/><br/>';
				echo '<h2 align="center"> Vous êtes maintenant connecté ! </h2>';
				$_SESSION['nom'] = $row['pseudoUtilisateur'];
				$_SESSION['type'] = $row['fonctionUtilisateur'];
				echo '<br/>';	
				echo '<div align=center>';
				echo '<p>Vous allez maintenant être redirigé vers le menu.<br/>';
				echo '<a href="menu.php">Cliquez ici si votre navigateur ne vous redirige pas automatiquement.</a></p>';
				echo '</div>';
				$delai=3; 
				$url='menu.php';
				header("Refresh: $delai;url=$url");
			}
	}
?>

dans ces 2 pages, j'appelle haut.html qui contient les balises de début d'une page html, fonctionBDD.php qui contient la connexion à la base de données et bas.php qui contient les balises fermantes.

Et après m'être loggé, j'ai ces messages d'erreur :

Warning: session_start() [function.session-start]: Cannot send session cookie - headers already sent by (output started at /mnt/154/sdc/a/9/monSite/Mediatheque - Free/connexion.php:1) in /mnt/154/sdc/a/9/monSite/Mediatheque - Free/connexion.php on line 2

Warning: session_start() [function.session-start]: Cannot send session cache limiter - headers already sent (output started at /mnt/154/sdc/a/9/monSite/Mediatheque - Free/connexion.php:1) in /mnt/154/sdc/a/9/monSite/Mediatheque - Free/connexion.php on line 2

Warning: Cannot modify header information - headers already sent by (output started at /mnt/154/sdc/a/9/monSite/Mediatheque - Free/connexion.php:1) in /mnt/154/sdc/a/9/monSite/Mediatheque - Free/connexion.php on line 41
J'ai déjà enlevé l'include de haut.html dans index.php, sans effet. J'ai également enlevé la redirection par header de connexion.php, les 2 premiers messages d'erreurs restent.

Si quelqu'un a déjà eu un problème similaire, merci !