Probleme dans redirection en php

Résolu
majdoulin Messages postés 106 Date d'inscription   Statut Membre -  
 aminos -
Bonjour,
svp pourquoi j'ai cette erreur quand je veux faire la redirection vers une autre page :

Warning: Cannot modify header information - headers already sent by (output started at C:\Program Files\EasyPHP 2.0b1\www\tennis\mise_a_jour.php:105) in C:\Program Files\EasyPHP 2.0b1\www\tennis\mise_a_jour.php on line 143

dans la ligne 105 j ai seulement : <input type="text" name="login" id="login">
et en ligne 143: header("Location: mise_admin.php");

voici le code php :

<?php
if(!empty($_POST["valider"]))
{ if(!empty($_POST['login']) && !empty($_POST['pass']) and ($_POST['login'] !==NULL) and ($_POST['pass'] !== NULL)) {

$login=$_POST['login'];
$pass=$_POST['pass'];

$rek=mysql_query("select login,pass,categorie from admin where login='$login' and pass='$pass' ");
mysql_close();
while ($ligne = mysql_fetch_array($rek))
{ $cat=$ligne[2];

header("Location: mise_admin.php");
}

}}
?>
Configuration: Windows XP
Firefox 2.0.0.11

6 réponses

  1. Dalida Messages postés 7114 Date d'inscription   Statut Contributeur Dernière intervention   923
     
    salut,

    c'est que tu as déjà retourné quelque chose avant l'instruction 'header()'.
    il faut qu'il n'y ait strictement rien avant l'ouverture de la balise PHP, il ne faut pas qu'il se produise d'erreur avant 'header()' et il ne faut pas que tu demandes plus d'une fois la redirection.

    l'article de la faq
    0
  2. majdoulin Messages postés 106 Date d'inscription   Statut Membre
     
    merci bien dalida ,

    mais svp si quelqu'un peut me dire Quel est la solution ?
    0
  3. Dalida Messages postés 7114 Date d'inscription   Statut Contributeur Dernière intervention   923
     
    lol !

    ben à toi de voir en fonction du script entier.

    • est-ce qu'il y a un espace ou un autre caractère avant '<?php' ?

    • est-ce que 'header()' est appelé une seconde fois ?

    • est-ce qu'il se produit une erreur avant 'header()' ?

    tu peux commencer en testant avec une redirection comme première instruction et une sortie de code
    header( 'Location:http://www.commentcamarche.net' );
    exit();

    mets cà juste après '<?php'
    et teste. si tu arrives sur CCM sans problème, tu peux rayer la première hypothèse.
    0
  4. Vous n’avez pas trouvé la réponse que vous recherchez ?

    Posez votre question
  5. majdoulin Messages postés 106 Date d'inscription   Statut Membre
     
    en faite , il fallait ecrire mon code php avnat le code html a cause du header, c'est ce que j'ai fait et ca a marché ,
    Merci bien dalida,
    bon courage a tt le monde .
    0