Problème de sessions PHP !

Fermé
Utilisateur anonyme - 16 juil. 2006 à 13:12
 Utilisateur anonyme - 18 juil. 2006 à 22:07
Bonjour !

J'ai un soucis avec des sessions sur mon site en PHP !

A savoir : Je suis chez FREE et j'ai bien créée le repertoire SESSIONS a la racine du site !

Voilà le code :

<?
if($user_email != "" && $user_pass != "")
{
  $user_pass = md5($user_pass) ;
 
  include("connection.php");
	
  //création de la requête SQL
  $sql = "SELECT * FROM utilisateur WHERE user_email = '".$user_email."' AND user_pass = '".$user_pass."'"	;
  //exécution de la requête SQL
  $requete = mysql_query($sql) ;
  //on récupère le résultat
  $result = mysql_fetch_object($requete) ;
  //si la requête s'est bien passée
  if(is_object($result))
  {
	session_start();
	//enregistrement d'une variable de session, ici le login de l'utilisateur
	$_SESSION["user_email"] = $user_email ;
	header ("Location: index.php");
	exit();
  }

  else
  {
    echo "non" ;
  }
}

else
{
  echo "non" ;
}

?>


Et les erreurs :


Warning: session_start() [function.session-start]: Cannot send session cookie - headers already sent by (output started at /mnt/112/sdb/2/c/bane/connection.php:4) in /mnt/112/sdb/2/c/bane/valid_identification.php on line 17

Warning: session_start() [function.session-start]: Cannot send session cache limiter - headers already sent (output started at /mnt/112/sdb/2/c/bane/connection.php:4) in /mnt/112/sdb/2/c/bane/valid_identification.php on line 17

Warning: Cannot modify header information - headers already sent by (output started at /mnt/112/sdb/2/c/bane/connection.php:4) in /mnt/112/sdb/2/c/bane/valid_identification.php on line 20



Si quelqu'un pouvais me donner un coup de pouce ca serai très sympa !

Merci d'avance ;)

2 réponses

Utilisateur anonyme
17 juil. 2006 à 18:24
session _start() doit être mis AVANT tout code html. Or dans le code que tu met je vois include("connection.php"); est-ce que cela ne "fabriquerai" pas du code html ?
0
Utilisateur anonyme
17 juil. 2006 à 18:54
<?
mysql_connect("localhost", "**", "**");
$connexion_reussie=mysql_select_db("**");
?>

Voilà ce que j'ai dans connection.php

(bien entendu avec les bonnes info a la place des **)
0
Voir le dernier cas sur cette page...
http://cestadire.ch/index.php?option=com_content&task=view&id=86&Itemid=29&lang=fr
0
Utilisateur anonyme
18 juil. 2006 à 19:59
Nickel ! Merci beaucoup !

Alors concernant mon erreur, au cas ou quelqu'un à le meme probleme que moi, voici la solution :

En fait dans mon programme j'avais rien d'envoyé avant mon session_start() mais j'avais quand même un include("connection.php").
Et a la fin du ficher include connection, j'avais taper entrer apres le ?> ce qui fait une ligne en html et ca plantait !

Bref !

Pour les sessions nickel, mais un message persiste :
Warning: Cannot modify header information - headers already sent by (output started at /mnt/112/sdb/2/c/bane/valid_identification.php:16) in /mnt/112/sdb/2/c/bane/valid_identification.php on line 17

Celui du header...

...quelqu'un vois d'ou ca peut venir ?

Merci d'avance !
0
Utilisateur anonyme > Utilisateur anonyme
18 juil. 2006 à 22:07
Bon g trouver une parade au header :

echo "<meta http-equiv='refresh' content='2 ; url=./index2.php'>"
0