j'ai eu ce msg d'erreur "Warning: Cannot modify header information - headers already sent by (output started at c:\program files\easyphp1-7\www\formation\creer_etu_form.php:140) in c:\program files\easyphp1-7\www\formation\creer_etu_form.php on line 239" quand j'ai fais <? session_start() ?> au debut bien avnt <html> et apres j'ai mis le code (header("location: page.php")) entre les balises .
en fait j'ai dejà reussi ce code ds une autre page mais sur une nouvelle page ou je voulais une redirection il me renvoie cette erreur.
keske je peux faire pour eliminer une fois pr tte cette erreur ?
en faite un header() doit etre tj avant l'affichage d'un echo par ex. En gros il ne faut rien ecrire avant un header! tu peut faire des requete sql etc traitement mais ne rien ecrire.
Exemple (ne fonctionne pas): ...
echo $var1;
if ($var1 != 0) {
header("location:page.php")
} else {
...
}
Cela ne peut fonctionné parceque t'as deja ecrit sur t'as page
Mais comme jt'ai dit tu peut faire des traitement avant
Exemple (fonctionne):
if($_GET['action'] == 'login') {
require_once('../config/connect.php');
mysql_select_db($database_mc, $mc);
$req = "SELECT * FROM tbl_membre WHERE utili='".$pseudo."'";
$exec = mysql_query($req);
$result = mysql_fetch_array($exec);
$req1 = "SELECT * FROM tbl_admin WHERE admin='".$pseudo."'";
$exec1 = mysql_query($req1);
$result1 = mysql_fetch_array($exec1);
Ouais, cette méthode permet de compresser si le navigateur l'accepte
(ainsi que le serveur) les données (c'est d'ailleurs ce que j'utilise
sur mon site même si mon hébergeur ne le prend pas en compte).