Session_start(): Cannot send session cache limiter - headers al
Mouss
-
OussH. Messages postés 32 Statut Membre -
OussH. Messages postés 32 Statut Membre -
Bonjour,
J'ai une erreur en PHP que je n'arrive pas a résoudre (je me suis renseigné sur internet mais pas réussi à résoudre mon problème). Voici mon erreur :
Warning: session_start(): Cannot send session cache limiter - headers already sent (output started at /Applications/MAMP/htdocs/PPE SDIS29/connect/connexion.php:3) in /Applications/MAMP/htdocs/PPE SDIS29/GestionConnexionFormulaire.php on line 25
Warning: Cannot modify header information - headers already sent by (output started at /Applications/MAMP/htdocs/PPE SDIS29/connect/connexion.php:3) in /Applications/MAMP/htdocs/PPE SDIS29/GestionConnexionFormulaire.php on line 27
Mon fichier index.php :
<?php
// Connexion à la base de données
include 'connect/connexion.php';
if($_POST['envoi_connexion'])
{
if(empty($_POST['login']) OR empty($_POST['password']))
{
include('index.php');
echo "<center><h2><font color='red'>Merci de remplir tous les champs</h2></font></center>";
}
else
{
//Sécurisation des données entrées par le membre
$login = $_POST['login'];
$password = $_POST['password'];
//On vérifie que les données correspondent dans la base de données
$sql = "SELECT * FROM LOGIN WHERE LOG_LOGIN='$login' AND LOG_MDP='$password'";
$result = mysql_query($sql) or die (mysql_error());
if(mysql_num_rows($result) > 0)
{
$data = mysql_fetch_array($result);
session_start();
$_SESSION['profilLogin'] = $data['LOG_LOGIN'];
header('Location: ../statut.php');
}
else
{
include('index.php');
echo "<center><h2><font color='red'>Erreur dans les logins</h2></font></center>";
}
}
}
?>
Mon fichier GestionConnexionFormulaire.php :
<?php
// Connexion à la base de données
include 'connect/connexion.php';
if($_POST['envoi_connexion'])
{
if(empty($_POST['login']) OR empty($_POST['password']))
{
include('index.php');
echo "<center><h2><font color='red'>Merci de remplir tous les champs</h2></font></center>";
}
else
{
//Sécurisation des données entrées par le membre
$login = $_POST['login'];
$password = $_POST['password'];
//On vérifie que les données correspondent dans la base de données
$sql = "SELECT * FROM LOGIN WHERE LOG_LOGIN='$login' AND LOG_MDP='$password'";
$result = mysql_query($sql) or die (mysql_error());
if(mysql_num_rows($result) > 0)
{
$data = mysql_fetch_array($result);
session_start();
$_SESSION['profilLogin'] = $data['LOG_LOGIN'];
header('Location: ../statut.php');
}
else
{
include('index.php');
echo "<center><h2><font color='red'>Erreur dans les logins</h2></font></center>";
}
}
}
?>
Et mon header:
<?php
session_start();
include 'functions.inc.php';
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html>
<head>
<title>SDIS29</title>
<meta http-equiv="Content-Type" content="text/html;" charset="iso-8859-1" />
<link href="../style.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="container">
<div id="logo"><img src="../images/logo.jpg" alt="Logo" /></div>
<div id="banner"><img src="../images/main-image.jpg" alt="Main Image" /></div>
Merci d'avance pour votre aide !!! :)
J'ai une erreur en PHP que je n'arrive pas a résoudre (je me suis renseigné sur internet mais pas réussi à résoudre mon problème). Voici mon erreur :
Warning: session_start(): Cannot send session cache limiter - headers already sent (output started at /Applications/MAMP/htdocs/PPE SDIS29/connect/connexion.php:3) in /Applications/MAMP/htdocs/PPE SDIS29/GestionConnexionFormulaire.php on line 25
Warning: Cannot modify header information - headers already sent by (output started at /Applications/MAMP/htdocs/PPE SDIS29/connect/connexion.php:3) in /Applications/MAMP/htdocs/PPE SDIS29/GestionConnexionFormulaire.php on line 27
Mon fichier index.php :
<?php
// Connexion à la base de données
include 'connect/connexion.php';
if($_POST['envoi_connexion'])
{
if(empty($_POST['login']) OR empty($_POST['password']))
{
include('index.php');
echo "<center><h2><font color='red'>Merci de remplir tous les champs</h2></font></center>";
}
else
{
//Sécurisation des données entrées par le membre
$login = $_POST['login'];
$password = $_POST['password'];
//On vérifie que les données correspondent dans la base de données
$sql = "SELECT * FROM LOGIN WHERE LOG_LOGIN='$login' AND LOG_MDP='$password'";
$result = mysql_query($sql) or die (mysql_error());
if(mysql_num_rows($result) > 0)
{
$data = mysql_fetch_array($result);
session_start();
$_SESSION['profilLogin'] = $data['LOG_LOGIN'];
header('Location: ../statut.php');
}
else
{
include('index.php');
echo "<center><h2><font color='red'>Erreur dans les logins</h2></font></center>";
}
}
}
?>
Mon fichier GestionConnexionFormulaire.php :
<?php
// Connexion à la base de données
include 'connect/connexion.php';
if($_POST['envoi_connexion'])
{
if(empty($_POST['login']) OR empty($_POST['password']))
{
include('index.php');
echo "<center><h2><font color='red'>Merci de remplir tous les champs</h2></font></center>";
}
else
{
//Sécurisation des données entrées par le membre
$login = $_POST['login'];
$password = $_POST['password'];
//On vérifie que les données correspondent dans la base de données
$sql = "SELECT * FROM LOGIN WHERE LOG_LOGIN='$login' AND LOG_MDP='$password'";
$result = mysql_query($sql) or die (mysql_error());
if(mysql_num_rows($result) > 0)
{
$data = mysql_fetch_array($result);
session_start();
$_SESSION['profilLogin'] = $data['LOG_LOGIN'];
header('Location: ../statut.php');
}
else
{
include('index.php');
echo "<center><h2><font color='red'>Erreur dans les logins</h2></font></center>";
}
}
}
?>
Et mon header:
<?php
session_start();
include 'functions.inc.php';
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html>
<head>
<title>SDIS29</title>
<meta http-equiv="Content-Type" content="text/html;" charset="iso-8859-1" />
<link href="../style.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="container">
<div id="logo"><img src="../images/logo.jpg" alt="Logo" /></div>
<div id="banner"><img src="../images/main-image.jpg" alt="Main Image" /></div>
Merci d'avance pour votre aide !!! :)
A voir également:
- Warning: session_start(): cannot send session cache limiter - headers already sent
- Local send - Télécharger - Divers Utilitaires
- Copie caché - Guide
- Numéro caché - Guide
- Jeux google caché - Guide
- Net limiter - Télécharger - Outils Internet
2 réponses
Salut
Déjà le
"//Sécurisation des données entrées par le membre " m'a bien fait rire ^^
car MySQL (L'extension PHP pas la BDD MySQL) est obselete depuis un petit moment déjà préférez MySQLi ou PDO (Mysqli est très similaires a MySQL donc plus facile a prendre en main)
Sinon t'es session doivent être démarré au tout tout début
Ca c'est le premier truc que tu doit mettre :
Essaye pour voir ce que ça donne déjà
(Si j'ai bien compris ton code)
Ensuite tu inclus ton index.php dans index.php c'essttt spécial..
donc tu démarre t'es sessions autant de fois que ton index est chargé dans ton index alors qu'elles doivent être démarrées une seules fois
ton header est chargé dans ton index ? Car tu as aussi démarré des sessions
Pour résumé c'est le bazard dans ton code ^^
Sinon pour revenir sur le "sécurité" ne stocker jamais vos code en clair dans ta Base de données
Un peu de lecture le minimum a savoir :
https://codes-sources.commentcamarche.net/faq/202-comment-securiser-son-site-et-eviter-les-failles-php
--
Déjà le
"//Sécurisation des données entrées par le membre " m'a bien fait rire ^^
car MySQL (L'extension PHP pas la BDD MySQL) est obselete depuis un petit moment déjà préférez MySQLi ou PDO (Mysqli est très similaires a MySQL donc plus facile a prendre en main)
Sinon t'es session doivent être démarré au tout tout début
Ca c'est le premier truc que tu doit mettre :
<?php
session_start();
.... SUITE DU CODE
Essaye pour voir ce que ça donne déjà
(Si j'ai bien compris ton code)
Ensuite tu inclus ton index.php dans index.php c'essttt spécial..
donc tu démarre t'es sessions autant de fois que ton index est chargé dans ton index alors qu'elles doivent être démarrées une seules fois
ton header est chargé dans ton index ? Car tu as aussi démarré des sessions
Pour résumé c'est le bazard dans ton code ^^
Sinon pour revenir sur le "sécurité" ne stocker jamais vos code en clair dans ta Base de données
Un peu de lecture le minimum a savoir :
https://codes-sources.commentcamarche.net/faq/202-comment-securiser-son-site-et-eviter-les-failles-php
--