Page 1 sur 1

redirection vers une page, erreur Cannot modify header

Posté : 13 déc. 2010, 17:16
par hackulous
Bonjour,

je fais une redirection vers une page lorsqu'un formulaire a été envoyé par mail.
j'obtiens l'erreur :

Code : Tout sélectionner

Warning: Cannot modify header information - headers already sent by
voici le code :
if (@mail($courrielBoutique,$sujetBoutique,$messageBoutique,$fromB)){
			// mail envoyé
			unset($_SESSION["panier"]); 
			header("Location:validation.php");
			
			}
			else {
			// erreur lors de l'envoi du mail
			header("Location:erreur.php");
			}

Je ne comprends pas , j'ai vu sur d'autre forum que c'est bien header() pour la redirection

Re: redirection vers une page, erreur Cannot modify header

Posté : 13 déc. 2010, 17:18
par stealth35
montre l'erreur complete

Re: redirection vers une page, erreur Cannot modify header

Posté : 13 déc. 2010, 17:24
par hackulous
Warning: Cannot modify header information - headers already sent by (output started at /mnt/146/sda/0/f/gssk/inc/tete.inc.php:6) in /mnt/146/sda/0/f/gssk/commande.php on line 645

Re: redirection vers une page, erreur Cannot modify header

Posté : 13 déc. 2010, 17:35
par dev3
Et tu n'as aucun code HTML (espace compris) avant ton header ?

Re: redirection vers une page, erreur Cannot modify header

Posté : 13 déc. 2010, 17:39
par hackulous
si si y a du code html/php avant le header en fait y a le formulaire etc ..
voici la page :
<?php
session_start();
if(!isset($_SESSION["panier"])){
		header("Location:index.php");
	}
require_once('inc/connexion_base.inc.php'); // connexion à la base de données
$classP="class='active'";
$cryptinstall="cryptographp.fct.php";
include $cryptinstall;   


// Valeur par d&eacute;faut. Prendra la valeur "ok" s'il n'y a pas d'erreur
..
// --- mise en forme des champs saisis dans le formulaire lors de sa soumission ---
....

// --- test de la validit&eacute; des champs saisis ---
....
include_once("inc/tete.inc.php");
?>
...formulaire etc..

<?php
.......
.....

			if (@mail($courrielBoutique,$sujetBoutique,$messageBoutique,$fromB)){
			// mail envoy&eacute;
			unset($_SESSION["panier"]); 
			header("Location:validation.php");
			
			}
			else {
			// erreur lors de l'envoi du mail
			header("Location:erreur.php");
			}
			
	// destruction du panier devenu inutile
}

}//fin si else
include_once("inc/footer.inc.php");

?>


Re: redirection vers une page, erreur Cannot modify header

Posté : 13 déc. 2010, 17:58
par dev3
N'oubliez jamais que header() doit être appelée avant que le moindre contenu ne soit envoyé
cf http://php.net/manual/fr/function.header.php

Re: redirection vers une page, erreur Cannot modify header

Posté : 13 déc. 2010, 18:06
par hackulous
hmm je vois merci,
et n'y a t il pas d'autre moyen ?

Re: redirection vers une page, erreur Cannot modify header

Posté : 13 déc. 2010, 18:24
par dev3
Soit Mettre le code de traitement de ton action en haut de fichier avant HTML
Soit mettre ton action dans un autre fichier (à spécifier dans ton form)

Re: redirection vers une page, erreur Cannot modify header

Posté : 13 déc. 2010, 18:45
par hackulous
Je te remercie, je vais essayer