[PHP] session_start();

Maxg59 Messages postés 275 Statut Membre -  
 Anonymous -
Salut a tous !
alors voial mon probléme :
J'utilise pour la premiere fois des sessions ( un petit pas pour l'humanitée un pas de géant pour moi !!! )et donc j'ai un probléme :
Notice: A session had already been started - ignoring session_start() in machin.php on line 4

"je comprend ce message" ( pour une foi que je comprend l'anglais !!! )
Mais je pensais que, pour pouvoir utiliser une session il falait toujours mettre session_start() au tout debut d'un code PHP, enfin c'est se que j'ai lu dans un tuto PHP.
Je voudrais savoir si c'est juste easy PHP qui fait sa ?
sinon, si j'ai besoin de mettre session_star() mais que easyPHP n'es a aps besoin je vouidrais pouvoir enlever ce mess ....
D'avance Big merci !!!
A voir également:

9 réponses

Maxg59 Messages postés 275 Statut Membre 27
 
C'est bon j'ai trouvé pourquoi sa aller pas : il y avait deja un session_start dans un fichier inclu, comme je mettait session start avant sa faisat 2 fois .....
J'avais oublié que j'avais mi mon session start dans un fichier inclu ( pour eviter de toujours repeter)
désolé ...
mais sa m'interesse quand même de savoir se que sa fait le @ ;-)
Merci de m'avoir aider et encor désolé ...
13
Jhamime
 
la Solution


if(!isset($_SESSION))
{
session_start();
}
5
Anonymous
 
Merci !
0
kilian Messages postés 8854 Statut Modérateur 1 526
 
Salut,

Ce session_start() est t'il dans un fichier inclus?
3
Maxg59 Messages postés 275 Statut Membre 27
 
Tout depend de se que tu apelle inclu ;
en fait je pense que non,
1er page identification : cré la session
transmition a la 2eme page par : header('Location : ../machin.php')
2eme page là ou j'ai remi un session start ( cette page apelle diffecents fichiers php et html)
voila
0
kilian Messages postés 8854 Statut Modérateur 1 526
 
Ah peut être que la session est gardée si un header location est lancé après....

Dans ce cas tu as la solution bourrine mais je vois pas mieux: met un arobase devant ton session_start comme ça il ne génèrera pas d'erreur (et comme ça si on va directement sur machin.php sans passer par identification, le session_start fonctionnera quand même:

@session_start()
0
Maxg59 Messages postés 275 Statut Membre 27 > kilian Messages postés 8854 Statut Modérateur
 
Ok merci mais tu pourrais m'expliquer qu'est ce qu'il y a de bourrin la dedan ????
D'avance Merci
0
mec perdu
 
bonjour, g un problème avec mon code je sait pas si c'est la session ou la récupération du mot de passe


la connexion au serveur est bonne des de coté (free et easyphp) les requêtes aussi mais si localhost quand je m'identifie avec un login et mot de passe sa m'affiche se message :

Notice: Undefined index: password in D:\DOCUMENT\Site\MON SITE\authentification.php on line 23

mais cela fonctionne quand même il retourne sur la page index avec la session de l'identifiant. Sur free sa redirige vers l'index mais il ne se passe rien, aucune session d'ouvert


voici mon code :

<html>
<head>
<meta http-equiv="Refresh"
content="0;URL=http://dj.slyders.free.fr/">
</head>

<?php include("session.php");?>

<?php

include('connex.php');

$identifiant = $_POST["identifiant"];
$passwd =$_POST["password"];

$sql = "SELECT login FROM adherant WHERE login ='$identifiant' AND password ='$passwd'";
$result = mysql_query($sql);

while ($ligne = mysql_fetch_array($result))
{
$identifiant = $ligne['login'];
$passwd = $ligne['password'];
}

$nbLigne=mysql_num_rows($result);

if ($nbLigne==0)
{

}
else
{
$_SESSION['identifiant']= $identifiant;
$_SESSION['password']= $passwd;
}

?>
</html>
2

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

Posez votre question
kilian Messages postés 8854 Statut Modérateur 1 526
 
En fait j'appelais ça solution bourrin parce que le @ ne corrigeait pas le problème mais le rendait muet... En plus si tu as d'autres soucis plus tard avec ce même @session_start(), l'erreur risque de ne pas être affichée etc...
1
tamsamani
 
salut
dans ce site tu trouveras cession start bien expliqué dan la partie php www.siteduzero.com
0
saksihem
 
Bonjour,
juste il faut voir session.auot_start dans le php.ini et dans votre cas c'est sur qu'elle est égal à 1 alors il faut l'initialiser à 0
et tout va bien
0
rien
 
Bonjour,

je ne comprends pas ceci, je travaille en serveur local avec Apache, j'ai une seule ession_start() et l'autoseeeion est à off dans le .ini.


//fichier1.php
<?php
session_start();
$alpha="a";
include("fichier21.php");
$_SESSION['bla']=$alpha;
?>

//fichier2.php
<?php
echo $alpha;
?>

A session had already been started - ignoring session_start() in C:\\www\\essai\\testsession1.php on line 2, referer: http://127.0.1/essai/

Mercide votre aide...
0
foufita Messages postés 73 Statut Membre 8
 
bonjour c'est tres simple je suis sur que t'a une ligne avant session_start(); meme si elle est vide
tu doit metrre comme ca : (rien avant l'ouverture du php)
<? php
session_start();
......
0
mec perdu
 
???
0