HORREUR !!
Je travail sur mon site en local depuis plus de 2 semaines, je le balance sur internet, et là HORREUR ... à chaque appel d'un header, sa plante :
déjà mon header avant, c'était sa :
header("location:/index.php");
mais maintenant je dois tous changer par :
header("location:http://nakat.power-heberg.be/pierre/admin/faq/index.php");
De plus une erreur :
Warning: Cannot modify header information - headers already sent by (output started at /home/nakat/www/pierre/admin/faq/modif_suppr.php:7) in /home/nakat/www/pierre/admin/faq/modif_suppr.php on line 77
apparait !!
Je vais sur internet et je vois qu'il faut placer le header tout en haut du code. Je le fais et là sa fonctionne, ou presque ... car voici mon code complet :
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81
| <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html>
<head>
<title>Foire aux questions</title>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1" />
<link href="/pierre/Style.css" rel="stylesheet" type="text/css" />
<script src="/pierre/javascript/chemin.js" language="javascript"></script>
<script src="/pierre/javascript/MasquerDiv.js" language="javascript"></script>
<script src="/pierre/javascript/textarea.js" language="javascript"></script>
</head>
<body onload="javascript:CacheTout( 'special')">
<?php
if (isset ($_POST['ModifSupprMessage'])) //Si l'appel vient du fichier index.php
{
if ($_POST['ModifSupprMessage'] == "Modifier") //Si on à cliqué sur le bouton "Modifier"
{
$page = "admin";
include($_SERVER["DOCUMENT_ROOT"]."/pierre/Include/Haut.inc.php");
include($_SERVER["DOCUMENT_ROOT"]."/pierre/Include/mysql.inc.php");
$sql = "SELECT faq_quest, faq_rep, faq_pseudo, faq_mail, faq_afficher FROM faq WHERE faq_id='" . $_POST['titrefaq'] . "'";
$requete = mysql_query($sql, $cnx) or die("Erreur dans $sql\n".mysql_error());
while ($modif = mysql_fetch_array($requete))
{
?><h1>Modifier une question</h1><br />
<form name="poster" action="modif_suppr.php" enctype="multipart/form-data" method="POST">
<div id="FAQConteneur">
Question : <br />
<?php echo $modif['faq_quest']; ?>
</div>
<a href="modif_quest.php?id=<?php echo $_POST['titrefaq']; ?>">Modifier la question</a><br /><br />
Réponse :<br /><?php include($_SERVER["DOCUMENT_ROOT"]."/pierre/Include/MiseEnFormeSimple.inc.php"); ?>
<?php $texte = $modif['faq_rep'];
include($_SERVER["DOCUMENT_ROOT"]."/pierre/Include/AffichageBBCode.inc.php"); ?>
<textarea id="textarea" rows="8" cols="30" name="msg" wrap="virtual" OnClick="this.focus();"><?php echo $texte; ?></textarea><br />
<input type="hidden" value="<?php echo $_POST['titrefaq'] ?>" name="identifiant" />
Afficher : <input type="checkbox" name="afficher"
<?php
if ($modif['faq_afficher'] == 1)
{
?>checked="checked"<?php
}
?>
<br />
<input type="submit" name="ModifQuestion" value="Modifier" />
</form><?php
}
?> <div id="retour"><a href="./">Retour</a></div>
<?php
$page = "admin";
include($_SERVER["DOCUMENT_ROOT"]."/pierre/Include/MenuVertical.inc.php");
}
else //Si on a cliqué sur le bouton "Supprimer"
{
include($_SERVER["DOCUMENT_ROOT"]."/pierre/Include/mysql.inc.php");
$sql = "DELETE FROM faq WHERE faq_id='" . $_POST['titrefaq'] . "'";
$requete = mysql_query($sql, $cnx) or die("Erreur dans $sql");
header("location:http://nakat.power-heberg.be/pierre/admin/faq/index.php");
}
}
else //Si on à confirmer la modification (appel de modif_suppr.php)
{
include($_SERVER["DOCUMENT_ROOT"]."/pierre/Include/RemplacementBBCode.inc.php"); //Insertion du code de remplacement des balises BBCode en balises HTML
include($_SERVER["DOCUMENT_ROOT"]."/pierre/Include/mysql.inc.php"); //Connexion à la base de données
if ($_POST['afficher'] == "on") //Si la case à cocher afficher à été cochée
{
$affiche = 1;
}
else
{
$affiche = 0;
}
$sql = "UPDATE faq SET faq_rep='".$texte."', faq_afficher='$affiche' WHERE faq_id='" .mysql_real_escape_string($_POST['identifiant']) . "'";
$requete = mysql_query($sql, $cnx) or die("Erreur dans $sql".mysql_error());
header("location:http://nakat.power-heberg.be/pierre/admin/faq/index.php");
}
?>
</body>
</html> |
Il y a 3 parties d'on une ou il doit y avoir un affichage, qui ne s'affiche pas, il passe direct au header et redirige la page.
Le problème est que j'utilise ce code sur de nombreuses pages.
Y-a-t-il un moyen pour effectuer une redirection que sur mes parties sans code d'affichage et existe-t-il un moyen de retrouver un lien simple de type :
header("location:/index.php");
Merci de votre aide ... j'en ai besoin !!
Partager