Session-start
Résolu
yseuld
-
yseuld -
yseuld -
Bonjour,
Voilà les phrases qui s'affichent sur mon site:
Warning: session_start() [function.session-start]: Cannot send session cookie - headers already sent by (output started at /homez.27/neufmois/www/index.php:3) in /homez.27/neufmois/www/index.php on line 89
Warning: session_start() [function.session-start]: Cannot send session cache limiter - headers already sent (output started at /homez.27/neufmois/www/index.php:3) in /homez.27/neufmois/www/index.php on line 89
Ces phrases sont apparues après un essai de modifications (qui ne concernaient que du texte ou des photos). Des modifications avaient déjà été faites avant et ne posaient aucun problème...
A signaler: je suis débutante, alors si vous pouvez, une explication simple m'aiderait beaucoup
Merci!
Voilà les phrases qui s'affichent sur mon site:
Warning: session_start() [function.session-start]: Cannot send session cookie - headers already sent by (output started at /homez.27/neufmois/www/index.php:3) in /homez.27/neufmois/www/index.php on line 89
Warning: session_start() [function.session-start]: Cannot send session cache limiter - headers already sent (output started at /homez.27/neufmois/www/index.php:3) in /homez.27/neufmois/www/index.php on line 89
Ces phrases sont apparues après un essai de modifications (qui ne concernaient que du texte ou des photos). Des modifications avaient déjà été faites avant et ne posaient aucun problème...
A signaler: je suis débutante, alors si vous pouvez, une explication simple m'aiderait beaucoup
Merci!
13 réponses
"headers already sent" Le header est déjà envoyer, il faut que tu fasses ton "session_start" avant d'envoyer du texte à la page.
C'est le bazar.
A la première ligne il est déjà écrit:
<?php require_once('Connections/main.php'); ?>
<?php
A la première ligne il est déjà écrit:
<?php require_once('Connections/main.php'); ?>
<?php
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Au fait, si je ferme la balise autrement, le texte devient tout rouge après donc plus gros problème d'affichage encore!
si j'associe le problème à cookies, ça vous dit quelque chose? Apparemment il y a un programme cookies mais si on se connecte, on en trouve aucune trace.
Voilà tout ce qui précède session-start sur le page problématique:
<?php require_once('Connections/main.php'); ?>
<?php
if (!function_exists("GetSQLValueString")) {
function GetSQLValueString($theValue, $theType, $theDefinedValue = "", $theNotDefinedValue = "")
{
$theValue = get_magic_quotes_gpc() ? stripslashes($theValue) : $theValue;
$theValue = function_exists("mysql_real_escape_string") ? mysql_real_escape_string($theValue) : mysql_escape_string($theValue);
switch ($theType) {
case "text":
$theValue = ($theValue != "") ? "'" . $theValue . "'" : "NULL";
break;
case "long":
case "int":
$theValue = ($theValue != "") ? intval($theValue) : "NULL";
break;
case "double":
$theValue = ($theValue != "") ? "'" . doubleval($theValue) . "'" : "NULL";
break;
case "date":
$theValue = ($theValue != "") ? "'" . $theValue . "'" : "NULL";
break;
case "defined":
$theValue = ($theValue != "") ? $theDefinedValue : $theNotDefinedValue;
break;
}
return $theValue;
}
}
$editFormAction = $_SERVER['PHP_SELF'];
if (isset($_SERVER['QUERY_STRING'])) {
$editFormAction .= "?" . htmlentities($_SERVER['QUERY_STRING']);
}
if ((isset($_POST["MM_insert"])) && ($_POST["MM_insert"] == "valipanier")) {
$insertSQL = sprintf("INSERT INTO panier (client, id_article, reference, nom, taille, couleur, quantite) VALUES (%s, %s, %s, %s, %s, %s, %s)",
GetSQLValueString($_POST['client'], "text"),
GetSQLValueString($_POST['id_article'], "int"),
GetSQLValueString($_POST['reference'], "text"),
GetSQLValueString($_POST['nom'], "text"),
GetSQLValueString($_POST['taille'], "text"),
GetSQLValueString($_POST['couleur'], "text"),
GetSQLValueString($_POST['quantite'], "int"));
mysql_select_db($database_main, $main);
$Result1 = mysql_query($insertSQL, $main) or die(mysql_error());
$insertGoTo = "account/panier.php";
if (isset($_SERVER['QUERY_STRING'])) {
$insertGoTo .= (strpos($insertGoTo, '?')) ? "&" : "?";
$insertGoTo .= $_SERVER['QUERY_STRING'];
}
header(sprintf("Location: %s", $insertGoTo));
}
$pararef_selection = "0";
if (isset($_POST['reference'])) {
$pararef_selection = $_POST['reference'];
}
$parataille_selection = "0";
if (isset($_POST['taille'])) {
$parataille_selection = $_POST['taille'];
}
mysql_select_db($database_main, $main);
$query_selection = sprintf("SELECT id_article, reference, taille, nom, couleur, prix FROM articles WHERE taille = %s AND reference = %s", GetSQLValueString($parataille_selection, "text"),GetSQLValueString($pararef_selection, "text"));
$selection = mysql_query($query_selection, $main) or die(mysql_error());
$row_selection = mysql_fetch_assoc($selection);
$totalRows_selection = mysql_num_rows($selection);
$paramclient_panier = "0";
if (isset($_SESSION['MM_Username'])) {
$paramclient_panier = $_SESSION['MM_Username'];
}
$paramarticle_panier = "0";
if (isset($_GET['id_article'])) {
$paramarticle_panier = $_GET['id_article'];
}
mysql_select_db($database_main, $main);
$query_panier = sprintf("SELECT id_panier FROM panier WHERE client=%s AND id_article=%s", GetSQLValueString($paramclient_panier, "text"),GetSQLValueString($paramarticle_panier, "int"));
$panier = mysql_query($query_panier, $main) or die(mysql_error());
$row_panier = mysql_fetch_assoc($panier);
$totalRows_panier = mysql_num_rows($panier);
$pararef_selection = "0";
?>
<?php
// *** Validate request to login to this site.
if (!isset($_SESSION)) {
session_start();
}
Voilà tout ce qui précède session-start sur le page problématique:
<?php require_once('Connections/main.php'); ?>
<?php
if (!function_exists("GetSQLValueString")) {
function GetSQLValueString($theValue, $theType, $theDefinedValue = "", $theNotDefinedValue = "")
{
$theValue = get_magic_quotes_gpc() ? stripslashes($theValue) : $theValue;
$theValue = function_exists("mysql_real_escape_string") ? mysql_real_escape_string($theValue) : mysql_escape_string($theValue);
switch ($theType) {
case "text":
$theValue = ($theValue != "") ? "'" . $theValue . "'" : "NULL";
break;
case "long":
case "int":
$theValue = ($theValue != "") ? intval($theValue) : "NULL";
break;
case "double":
$theValue = ($theValue != "") ? "'" . doubleval($theValue) . "'" : "NULL";
break;
case "date":
$theValue = ($theValue != "") ? "'" . $theValue . "'" : "NULL";
break;
case "defined":
$theValue = ($theValue != "") ? $theDefinedValue : $theNotDefinedValue;
break;
}
return $theValue;
}
}
$editFormAction = $_SERVER['PHP_SELF'];
if (isset($_SERVER['QUERY_STRING'])) {
$editFormAction .= "?" . htmlentities($_SERVER['QUERY_STRING']);
}
if ((isset($_POST["MM_insert"])) && ($_POST["MM_insert"] == "valipanier")) {
$insertSQL = sprintf("INSERT INTO panier (client, id_article, reference, nom, taille, couleur, quantite) VALUES (%s, %s, %s, %s, %s, %s, %s)",
GetSQLValueString($_POST['client'], "text"),
GetSQLValueString($_POST['id_article'], "int"),
GetSQLValueString($_POST['reference'], "text"),
GetSQLValueString($_POST['nom'], "text"),
GetSQLValueString($_POST['taille'], "text"),
GetSQLValueString($_POST['couleur'], "text"),
GetSQLValueString($_POST['quantite'], "int"));
mysql_select_db($database_main, $main);
$Result1 = mysql_query($insertSQL, $main) or die(mysql_error());
$insertGoTo = "account/panier.php";
if (isset($_SERVER['QUERY_STRING'])) {
$insertGoTo .= (strpos($insertGoTo, '?')) ? "&" : "?";
$insertGoTo .= $_SERVER['QUERY_STRING'];
}
header(sprintf("Location: %s", $insertGoTo));
}
$pararef_selection = "0";
if (isset($_POST['reference'])) {
$pararef_selection = $_POST['reference'];
}
$parataille_selection = "0";
if (isset($_POST['taille'])) {
$parataille_selection = $_POST['taille'];
}
mysql_select_db($database_main, $main);
$query_selection = sprintf("SELECT id_article, reference, taille, nom, couleur, prix FROM articles WHERE taille = %s AND reference = %s", GetSQLValueString($parataille_selection, "text"),GetSQLValueString($pararef_selection, "text"));
$selection = mysql_query($query_selection, $main) or die(mysql_error());
$row_selection = mysql_fetch_assoc($selection);
$totalRows_selection = mysql_num_rows($selection);
$paramclient_panier = "0";
if (isset($_SESSION['MM_Username'])) {
$paramclient_panier = $_SESSION['MM_Username'];
}
$paramarticle_panier = "0";
if (isset($_GET['id_article'])) {
$paramarticle_panier = $_GET['id_article'];
}
mysql_select_db($database_main, $main);
$query_panier = sprintf("SELECT id_panier FROM panier WHERE client=%s AND id_article=%s", GetSQLValueString($paramclient_panier, "text"),GetSQLValueString($paramarticle_panier, "int"));
$panier = mysql_query($query_panier, $main) or die(mysql_error());
$row_panier = mysql_fetch_assoc($panier);
$totalRows_panier = mysql_num_rows($panier);
$pararef_selection = "0";
?>
<?php
// *** Validate request to login to this site.
if (!isset($_SESSION)) {
session_start();
}
bonjour, ou re plutot ^^
dans main.php y'a pas du texte d'écrit ou un espace avant ou après des balises <?php ?> car l'erreur dit que la sortie a commencé à la ligne 3 soit là où tu as mis le include... regardes qu'il n'y ait pas de code HTML, de passage à la ligne etc...
EDIT: et il faut aussi supprimé les passages à la ligne que tu fais entre chaque ?> <?php je vois que tu en as plusieurs rien que dans ce code...
dans main.php y'a pas du texte d'écrit ou un espace avant ou après des balises <?php ?> car l'erreur dit que la sortie a commencé à la ligne 3 soit là où tu as mis le include... regardes qu'il n'y ait pas de code HTML, de passage à la ligne etc...
EDIT: et il faut aussi supprimé les passages à la ligne que tu fais entre chaque ?> <?php je vois que tu en as plusieurs rien que dans ce code...
Bonsoir,
Je ne sais pas si vous êtes encore là, vu l'heure, mais vous pouvez me dire à quoi correspondent des passage de ligne?
Parce qu'apparemment, rien que de les supprimer entre ?> et <?php, ça marche???!!!!!!!!!!
Merci
Je ne sais pas si vous êtes encore là, vu l'heure, mais vous pouvez me dire à quoi correspondent des passage de ligne?
Parce qu'apparemment, rien que de les supprimer entre ?> et <?php, ça marche???!!!!!!!!!!
Merci
lorsque l'on écrit quelque chose en dehors des balises PHP, c'est considérer comme du texte... et si on considère qu'en informatique un saut de ligne correspond au caractère \n ba tu comprends pourquoi il te dit qu'il y a une sortie d'effectuer... pasque dans ton document tu as laissé des sauts de ligne, donc des caractères \n, voilà, et c'est pareil pour les espaces...
Enfin bon maintenant tu le sais... ravi que ça fonctionne, vive CCM!
Enfin bon maintenant tu le sais... ravi que ça fonctionne, vive CCM!
apparemment, c'est déjà écrit avant le texte!