Pb session_star();

[Résolu]
Signaler
Messages postés
239
Date d'inscription
jeudi 21 juillet 2005
Statut
Membre
Dernière intervention
1 juillet 2007
-
Messages postés
9433
Date d'inscription
mardi 9 octobre 2001
Statut
Membre
Dernière intervention
13 avril 2007
-
Bonjour tous le monde,


Voila voila, j'ai un petit probleme en php. depuis 2 mois mon site est héberger sur un serveur payant. aucun pb. jai transféré tous mon site + base sql + changer la config et j'ai tous upper sur un autre serveur web payant.


Parfait tous marche bien ! Sauf !
et oui au moment ou on sidentifie sur le site on tape son pseudo + mot de passe !


et il redirige vers la page verif.php et m'affiche cette Erreur :
-------------------

Warning: session_start(): Cannot send session cookie - headers already sent by (output started at /home/oxygenb/public_html/bhaf/config.php:23) in /home/oxygenb/public_html/bhaf/verif.php on line 11

Warning: session_start(): Cannot send session cache limiter - headers already sent (output started at /home/oxygenb/public_html/bhaf/config.php:23) in /home/oxygenb/public_html/bhaf/verif.php on line 11

Warning: Cannot modify header information - headers already sent by (output started at /home/oxygenb/public_html/bhaf/config.php:23) in /home/oxygenb/public_html/bhaf/verif.php on line 57
------------------

Mais que dois je faire ??? y a til un truc a activer ? je n'en sais rien du tous. je sais que mon script est bon... si quelquun peut maider ? ce serait génial ! merci beaucoup ...

12 réponses

Messages postés
10839
Date d'inscription
lundi 24 février 2003
Statut
Modérateur
Dernière intervention
2 mars 2010
23
Bah ouais, moi je vois un saut de ligne, apparemment, après ton
session_start () et avant ton include ('config.php'), alors que tu fais
un header ('Location: ...'). Et un saut de ligne, ça fait partie du
code html.
Messages postés
10839
Date d'inscription
lundi 24 février 2003
Statut
Modérateur
Dernière intervention
2 mars 2010
23
au passage, les SELECT * sont à éviter. Il vaut mieux nommer les champs dont tu as besoin. Toujours. (question de charge).
Messages postés
388
Date d'inscription
lundi 7 juillet 2003
Statut
Webmaster
Dernière intervention
10 février 2009

virer tout ce qui est écriture ( ce qui inclu les espaces et autres
caractères) avant ton session_start() généralement en début de page


"They are 10 sorts of persons whose understand binary and whose not"
Messages postés
239
Date d'inscription
jeudi 21 juillet 2005
Statut
Membre
Dernière intervention
1 juillet 2007

Lol oui c bien ca ;) merci de la reponse
Messages postés
239
Date d'inscription
jeudi 21 juillet 2005
Statut
Membre
Dernière intervention
1 juillet 2007

Euh petite derniere chose, ca marche bien sauf que en haut de page il est inscrit cela :

Warning: session_start(): Cannot send session cache limiter - headers already sent (output started at /home/oxygenb/public_html/bhaf/config.php:12) in /home/oxygenb/public_html/bhaf/mon_compte.php on line 28
Messages postés
10839
Date d'inscription
lundi 24 février 2003
Statut
Modérateur
Dernière intervention
2 mars 2010
23
Messages postés
10839
Date d'inscription
lundi 24 février 2003
Statut
Modérateur
Dernière intervention
2 mars 2010
23
Mais en gros, tu ne peux pas envoyer de header () si du html a déjà été
envoyé avant. Là, il reste du html, du blanc, quelquechose, dans une
page incluse (config.php), et ce avant que tu n'envoies tes header.
Messages postés
239
Date d'inscription
jeudi 21 juillet 2005
Statut
Membre
Dernière intervention
1 juillet 2007

<?php
session_start();

include("config.php");
$id = $_POST["id"];
$passe = $_POST["passe"];
@mysql_pconnect($BD_serveur, $BD_utilisateur, $BD_motDePasse)
or die("Impossible de se connecter au serveur de bases de données.");
@mysql_select_db($BD_base)
or die("Impossible de se connecter à la base de données.");
$requete = "SELECT * FROM membres ".
" WHERE id='$id' AND passe='$passe'";
$result = @mysql_query($requete);
if ($enreg = @mysql_fetch_array($result)) {
// Si une ligne a été trouvée c'est que le couple
// (identifant, mot de passe) est valide
$_SESSION["membre"] = TRUE;
$_SESSION["membreid"] = $id;
header("Location: mon_compte.php");
die();
} else {
$_SESSION["membre"] = FALSE;
header("Location: compte_invalide.html");
die();
}
?>

tu vois du html quelque part toi ??? :-s
et dans la page config. ya rien que les code de base de donnée
Messages postés
239
Date d'inscription
jeudi 21 juillet 2005
Statut
Membre
Dernière intervention
1 juillet 2007

c'est m'sieur !
merci beaucoup en tous cas davoir pris le temps de prendre en compte ma demande ;)
merci :)
Messages postés
10839
Date d'inscription
lundi 24 février 2003
Statut
Modérateur
Dernière intervention
2 mars 2010
23
Mais je t'en prie :-)
Messages postés
2350
Date d'inscription
mercredi 13 octobre 2004
Statut
Membre
Dernière intervention
18 avril 2015
3
Au passage,il suffit de savoir lire :



(output started at /home/oxygenb/public_html/bhaf/config.php:12)



C'est pas compliqué de savoir que t'as du html à la ligne 12 où dans ses environs :)
Messages postés
9433
Date d'inscription
mardi 9 octobre 2001
Statut
Membre
Dernière intervention
13 avril 2007
9
Salut,



c'est le problème le plus courant, avant de poster il faut rechercher un peu...



tape "headers already sent" dans le moteur de recherche :-)

<hr size="2" width="100%"><li>Entraide, dépannage et vulgarisation informatique : Mon site de vulgarisation informatique</li>