Connexion d'un administrateur ou d'un utilisa

marysd Messages postés 6 Statut Membre -  
marysd Messages postés 6 Statut Membre -
j ai toujours cette message d'erreur 'Warning: Cannot modify header information - headers already sent by (output started at c:\program files\easyphp1-8\www\bci\tete.php:6) in c:\program files\easyphp1-8\www\bci\connexion.php on line 55'
Merci d'avoir m'aider
Vous trouvez si dessus le code
<?php include("tete.php"); ?>
<div class="art-content">
<div class="art-Post">
<div class="art-Post-body">
<div class="art-Post-inner">
<br><br>
<p class="title">Connexion</p>
<h4>Cette page vous permet de vous connecter en tant que un opérateur ou un administrateur</h4>
<form action="index.php" method="post" >
<?php if(isset($_COOKIE["PSEUDO"])){
?>
<input type="button" name="deco" value="deconnexion" onClick="location.href='deconnexion.php'" class="bot">
<?php } ?><br>
Pseudo: <input type="text" name="pseudo" /><br /><br />
Mot de passe:<input type="password" name="pwd" value=""/><br /><br />
<input type="submit" value="Se connecter" class="bot"><br />

<br><br><br>
<?php
if (isset($_POST['pseudo']) AND isset($_POST['pwd'])){
if ($_POST['pseudo'] != NULL AND $_POST['pwd'] != NULL){
$pseudo = htmlentities ($_POST['pseudo']);
$pwd = htmlentities ($_POST['pwd']);
mysql_connect("localhost", "root", " ") ;
mysql_select_db("stage");
$res1 = mysql_query("select * from operateurs;");
while($tab = mysql_fetch_array($res1) AND ($pseudo != $tab['pseudo']) AND ($pwd != $tab['pwd']));
if(($pseudo == $tab['pseudo']) AND ($pwd == $tab['pwd'])){
setcookie("PSEUDO", $tab["pseudo"], time()+3600, "/");
header('Location: index.php');
}
else ?> <script type="text/javascript"> alert( 'le pseudo ou/et mot de passe n\'existe(s) pas');
</script>
<?php }
}
?>

<?php if(isset($_COOKIE["ADMIN"])){
?>

<?php } ?>
<br><br><br><br>
<?php if(isset($_COOKIE["ADMIN"])){
?>

</form>
<br><br><br>
<?php
if (isset($_POST['pwd'])){
if ($_POST['pwd'] != NULL){
$pwd = $_POST['pwd'];
mysql_connect("localhost", "root", "");
mysql_select_db("stage");
$res1 = mysql_query("select * from admin;");
while($tab = mysql_fetch_array($res1))
if($pwd == $tab['pwd']){
setcookie("ADMIN", $tab["pwd"], time()+3600, "/");
header("Location: index.php");
}
else
echo 'le mot de passe n\'existe pas';
}
}
?> <?php } ?> <br><br><br>
<br><br><br><br><br><br>
<br>

<div class="cleared"></div>
</div>
</div>
</div>
<?php include("bas.php");?>

2 réponses

noux
 
Salut,

Cannot modify header information - headers already sent : Impossible de modifier les entêtes HTML, elles sont déjà envoyés.
in line 55 : à la ligne 55, j'imagine que c'est celle-ci :
header('Location: index.php');

La fonction header permet de modifier l'entête HTTP. L'entête HTTP est envoyée avant le code HTML.
Tu essaye donc de modifier l'entête alors que tu as déjà commencé à envoyer du code HTML (depuis ton fichier tete.php).

PhpManual :
N'oubliez jamais que header() doit être appelée avant que le moindre contenu ne soit envoyé...

En bref, tu dois modifier les entêtes HTTP avant d'envoyer le moindre contenu HTML, en général, la fonction header est appelée dans les premières lignes de ton script PHP.
0
marysd Messages postés 6 Statut Membre
 
Merci bien,mais je voudrais savoir comment je peux modifier les entêtes de 'tete.php"
sachant que ses entêtes sont les suivent:
0
marysd Messages postés 6 Statut Membre
 
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<meta http-equiv="Content-Type" content="text/html; charset=windows-1256" />
<meta http-equiv="X-UA-Compatible" content="IE=EmulateIE7" />
<title>Traitement_Automatisé_des_Transactions_Monétiques_Interbancaire</title>
<script type="text/javascript" src="script.js"></script>
<link rel="stylesheet" href="style.css" type="text/css" media="screen" />
<!--[if IE 6]><link rel="stylesheet" href="style.ie6.css" type="text/css" media="screen" /><![endif]-->
<!--[if IE 7]><link rel="stylesheet" href="style.ie7.css" type="text/css" media="screen" /><![endif]-->
</head>
0