begin process at 2012 05 28 12:55:06
  Trouver un code source :
 
dans
 
Accueil > Forum > 

PHP

 > 

Base de données

 > 

MySQL

 > 

A l'aide : Warning: Cannot modify header information


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

A l'aide : Warning: Cannot modify header information

dimanche 17 janvier 2010 à 14:35:04 | A l'aide : Warning: Cannot modify header information

FXPHANTOM

Bonjour,
J'appelle tous les webmasters expérimentés pour résoudre mon problème . J'ai un hébergement mutualisé chez OVH , j'ai installé mon site sur le server et installé la base de donnée . au moment des tests j'ai essayé de me connecté sur mon compte administrateur mais j'ai le soucis suivant :

Warning: Cannot modify header information - headers already sent by (output started at /homez.318/kadoox/www/index-2.php:9) in /homez.318/kadoox/www/auth/connxcompte.php on line 29

j'ai essayé d'utiliser la redirection en javascript vers une page membre ... celle-ci fonctionne mais le problème mais il ne se connecte pas à la base de donnée du client .

Je vous poste ci-dessous ma page index.php qui me sert a la connexion du compte client ainsi que ma page comportant le module de connexion intitulé connxcompte.php.

Page : index.php

Code PHP :
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
<title>----Index----</title>
<link href="style.css" rel="stylesheet" type="text/css" />
<link href="layout.css" rel="stylesheet" type="text/css" />
</head>
<body id="index_2">
	<div class="top_bg">
		<div class="bot_bg">
			<div id="main">
				<!--header -->
				<div id="header">
					<object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000"
						codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=8,0,0,24"
						width="776" height="425">
						<param name="movie" value="flash/header_flash8.swf?button=3" /> 
						<param name="quality" value="high" />
						<param name="menu" value="false" />
						<param name="wmode" value="transparent" />
						<!--[if !IE]> <-->
						<object data="flash/header_flash8.swf?button=3"
							width="776" height="425" type="application/x-shockwave-flash">
							<param name="quality" value="high" />
							<param name="menu" value="false" />
							<param name="wmode" value="transparent" />
							<param name="pluginurl" value="http://www.macromedia.com/go/getflashplayer" />
							FAIL (the browser should render some flash content, not this).
						</object>
						<!--> <![endif]-->
					</object>
				</div>
				<!--header end-->
				<div id="middle">
					<div class="ver_line1">
						<div class="ver_line2">
							<div class="column1">
							  <div class="indent">
							    <p><img src="images/parrainagefont.jpg" width="221" height="304" /></p>
							  </div>
							</div>
						  <div class="column2">
						    <div class="indent">
                        <?php require_once('authent/connxcompte.php') ?>
                <br />
									<br style="line-height:11px" />
									<center><a href="#">Mot de Passe oublié ... cliquez-ici !</a></center><br />
</div>
							</div>
							<div class="clear"></div>
						</div>
					</div>
				</div>
				<!--footer -->
				<div id="footer">
					<div class="left">
						 | &copy; 2010 | <a href="index-6.html">Privacy Policy</a><br />
				  </div>
					<div class="right">
						Sponsors:<a href="#"><img alt="" src="images/footer_p1.gif" width="45" height="56" /></a><a href="#"><img alt="" src="images/footer_p2.gif" width="47" height="56" /></a><a href="#"><img alt="" src="images/footer_p3.gif" width="44" height="56" /></a>
					</div>
					<div class="clear"></div>
				</div>
				<!--footer end-->
			</div>
		</div>
	</div>

</body>

</html>


et ma page connxcompte.php situé dans mon repertoire "authent"

Code PHP :
<?php require_once('connexion.php');
if (isset($_POST['login'])){ // execution uniquement apres envoi du formulaire (test si la variable POST existe)
	$login = addslashes($_POST['login']); //nom d'utilisateur
	$pass = addslashes(md5($_POST['pass'])); 
	
mysql_select_db($database_dbprotect, $dbprotect);
$verif_query=sprintf("SELECT * FROM utilisateurs WHERE login='$login' AND pass='$pass'");
$verif = mysql_query($verif_query, $dbprotect) or die(mysql_error());
$row_verif = mysql_fetch_assoc($verif);
$utilisateur = mysql_num_rows($verif);
if ($utilisateur) {	
if (isset($_SESSION['authentification']))  // enregistrement de la session
		$_SESSION['privilege'] = $row_verif['privilege']; 
		$_SESSION['nom'] = $row_verif['nom']; // Son nom
		$_SESSION['prenom'] = $row_verif['prenom']; // Son Prénom
		$_SESSION['login'] = $row_verif['login']; // Son Login
		$_SESSION['pass'] = $row_verif['pass']; // Son mot de passe (à éviter)
		$_SESSION['daten'] = $row_verif['daten'];
		$_SESSION['adresse1'] = $row_verif['adresse1'];
		$_SESSION['adresse2'] = $row_verif['adresse2'];
		$_SESSION['codepostal'] = $row_verif['codepostal'];
		$_SESSION['ville'] = $row_verif['ville'];
		$_SESSION['tel1'] = $row_verif['tel1'];
		$_SESSION['credit'] = $row_verif['credit'];
		$_SESSION['pays'] = $row_verif['pays'];
		$_SESSION['email'] = $row_verif['email'];
		$_SESSION['id_user'] = $row_verif['id_user'];
		header("Location:/index-5.php");
	 	}
	else {
		header("Location:authent/connxcompte.php?erreur=login"); // redirection si utilisateur non reconnu
	}
}
if(isset($_GET['erreur']) && $_GET['erreur'] == 'logout'){ // Test sur les paramètres d'URL qui permettront d'identifier un contexte de déconnexion
	$prenom = $_SESSION['prenom']; // On garde le prénom en variable pour dire au revoir (soyons polis :-)
	session_unset("authentification");
	header("Location:authent/connxcompte.php?erreur=delog&prenom=$prenom");
}
?>
<html>
<head>
<title>AUTHENTIFICATION - DBProtect</title>
<link href="styles.css" rel="stylesheet" type="text/css">
</header>
<body>
<form action="" method="post" name="connect">
  <h2 align="center" class="titre"><strong>CONNEXION A L'ESPACE CLIENT</strong></h2>
  <p align="center" class="title">
    <?php if(isset($_GET['erreur']) && ($_GET['erreur'] == "login")) { // Affiche l'erreur  ?>
    <strong class="erreur">Echec d'authentification !!! &gt; login ou mot de passe incorrect</strong>

    <?php } ?>
    <?php if(isset($_GET['erreur']) && ($_GET['erreur'] == "delog")) { // Affiche l'erreur ?>
    <strong class="reussite">D&eacute;connexion r&eacute;ussie... A bient&ocirc;t <?php echo $_GET['prenom'];?> !</strong>
    <?php } ?>
    <?php if(isset($_GET['erreur']) && ($_GET['erreur'] == "intru")) { // Affiche l'erreur ?>
    <strong class="erreur">Echec d'authentification !!! &gt; Aucune session n'est ouverte ou vous n'avez pas les droits pour afficher cette page</strong>

    <?php } ?>
  </p>
  <p align="center">&nbsp;</p><br><br><br>
  <center>
    <table width="385" height="130"  border="1" align="center" cellpadding="10" cellspacing="0" bgcolor="f4f4ee" class="tableaux">
    <tr>
      <td width="51%" height="42""><div align="center">
        <h3>Identifiant:</h3>
      </div></td>
        <td width="49%"><div align="center"><input name="login" type="text" id="login"></td>
    </tr>
    <tr>
      <td width="51%" height="42""><div align="center">
        <h3>Mot de passe:</h3>
      </div></td>
      <td width="49%"><div align="center"><input name="pass" type="password" id="pass"></td>
    </tr>
    <tr>
      <td height="34" colspan="2"><div align="center">
          <input type="submit" name="Submit" value="Se connecter">
      </div></td>
    </tr>
  </table></center>
</form>
</body>
</html>


En vous remerciant par avance !
dimanche 17 janvier 2010 à 14:49:27 | Re : A l'aide : Warning: Cannot modify header information

kohntark

Membre Club
Réponse acceptée !
Salut,

Sans être rabat joie :
C'est une question qui revient des dizaines de millier de fois un peu partout sur le web, si tu avais fais un minimum de recherche tu ne poserais sans doute pas la question.

Revois donc la doc de header :


N'oubliez jamais que header() doit être appelée avant que le moindre contenu ne soit envoyé, soit par des lignes HTML habituelles dans le fichier, soit par des affichages PHP. Une erreur très classique est de lire un fichier avec include() ou require(), et de laisser des espaces ou des lignes vides, qui produiront un affichage avant que la fonction header() ne soit appelée. Le même problème existe avec les fichiers PHP/HTML standards.



En l'occurrence tu fais un require_once('authent/connxcompte.php')
N'oublie pas non plus de lire les messages d'erreur, ils sont souvent très explicites.


Cordialement,


Kohntark -

dimanche 17 janvier 2010 à 14:55:38 | Re : A l'aide : Warning: Cannot modify header information

FXPHANTOM

Réponse acceptée !
oui ben justement le rabajoie (), je sais pertinemment qu'il y a des milliers de sujets la dessus , ca fait deux jours que je suis en train de chercher et même essayé plusieurs modifications mais rien n'y fait ... donc ne t'en fais pas , je ne me permettrai pas de poster sur le forum si je n'ai vraiment pas un problème ... je penses surtout que c'est dû au header de ma page index.php mais le soucis c'est que je ne sais pas quoi modifié ...
dimanche 17 janvier 2010 à 14:59:12 | Re : A l'aide : Warning: Cannot modify header information

FXPHANTOM

Réponse acceptée !
En fait, la ligne 9 de index.php correspond à :

</head>
<body id="index_2"> <---------- ligne 9
<div class="top_bg">

dimanche 17 janvier 2010 à 15:16:44 | Re : A l'aide : Warning: Cannot modify header information

kohntark

Membre Club
Réponse acceptée !
Ces derniers propos auraient été bienvenus dans ton premier message, histoire que l'on ne t'associe pas aux centaines de fainéants qui peuplent ce forum.
En même temps vu la présentation il y avait peu de doute

(je n'ai que 30 secondes, je la fais rapide en tentant de ne pas dire trop de bêtises. J'aurai plus de temps ce soir)

Comme la doc l'indique clairement il ne faut rien envoyer au client avant l'utilisation de header (c'est propre au protocole HTTP)

Comme je le mentionnais ci dessus tu fais un :
require_once('authent/connxcompte.php') dans lequel tu utilises la fonction header.

Le problème vient du fait qu'avant cette inclusion (require_once) tu as déjà envoyé la trame suivante au client :
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
[...]
</div>
</div>
<div class="column2">
<div class="indent">


Le fait de passer ton require_once au tout début de index.php devrait régler le pb (je n'ai parcouru qu'en diagonale le code)

Cordialement,

Kohntark -

dimanche 17 janvier 2010 à 15:19:23 | Re : A l'aide : Warning: Cannot modify header information

FXPHANTOM

ok merci ... je vais tester ... je te tiendrai au courant de la suite des evènements ...
dimanche 17 janvier 2010 à 15:34:17 | Re : A l'aide : Warning: Cannot modify header information

FXPHANTOM

Réponse acceptée !
Bon il y a juste une chose qui m'énerve c'est que tu ais eu raison . Le fait de placer require_once('authent/connxcompte.php') en tout début à réglé mon problème . Mille merci ...

Je terminerai juste sur un autre petit soucis car le fait de mettre require_once('authent/connxcompte.php') tout en haut de ma page fait que mon cadre d'identification du membre se trouve tout en haut de ma page . Y a t-il un moyen pour le mettre en dessous de <!--header end--> .

Merci encore en tout cas ... ça fait plaisir d'apprendre avec des vrais codeurs
lundi 18 janvier 2010 à 09:29:07 | Re : A l'aide : Warning: Cannot modify header information

syndrael

Ouh là.. que de réponses acceptées !! LOL !!
S.


Cette discussion est classée dans : page, code, php, index, warning


Répondre à ce message

Sujets en rapport avec ce message

redirection de vers une page [ par cyrilherve ] tj'ai un formulaire de connection avec deux champ de saisi pour l'identifiant et le mot de passe. la methode 'action' execute le fichier 'menuprincipa Affichage, enregistrement et recuperation de l'url [ par bedidaquin01 ] bonjour mes frères grands, venez moi en aide pour la réussite de mon script svp. j'ai deux page: La première:[u]maeqapeil.php[/u] j'effectue une reche Passage de variables via formulaire [ par jnkfou ] Bonjour, je suis en train de creer une page qui permettrais de modifier le profil de l'utilisateur (c'est a partir un d'un blog wordpress que j'ai mo Comment insérer du code PHP dans une page HTML [ par christie49 ] Comment [b]intégrer[/b] un bout de [b]code PHP [/b]dans une [b]page HTML[/b] et [b][u]pouvoir transmettre les variables javascripts à mon code PHP [/u Importation d'une variable par cookie [ par jrmy7 ] Bonjour à tous ! Comme vous le devinerez je débute en PHP. C'est la deuxième fois que je pose cette question, la première publication m'a permis de c 2 formulaire en conflit [ par scromania ] bonjour, Voila dans la cas ou l'utilisateur et de niveau =9 alors une page (include)et en plus. [code=php]if ($visiteur == 9){ include("modules/Page Mes pages ne s'aiment pas [ par zippedfire ] Bonjour, j'ai une page index.php : [code=php] [/code] mais quand j'ai mis ma page en ligne, ça defaut de transmision avec url php html [ par profiter ] bonjour lorsque j'envoie une variable a l'aide d'un url aussi la var je la recupere de la base de donnees et s'affiche bien dans la premiere page alor Mon formulaire ne s'affiche pas dans ma page php [ par brfrance ] Bonjour, Bonjour, Mon formulaire html (voir ci dessous) ne s'affiche pas dans ma page php. formulaire :[code=html] " name="commentaire">


Nos sponsors


Sondage...

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

A découvrir



 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 1,778 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales