IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Langage PHP Discussion :

[PHP-JS] Fonction header pas acceptée


Sujet :

Langage PHP

  1. #1
    Membre régulier Avatar de carelha
    Profil pro
    Inscrit en
    Mars 2006
    Messages
    168
    Détails du profil
    Informations personnelles :
    Localisation : France, Yvelines (Île de France)

    Informations forums :
    Inscription : Mars 2006
    Messages : 168
    Points : 109
    Points
    109
    Par défaut [PHP-JS] Fonction header pas acceptée
    bonjour,
    ja galère depuis un temps certain sur une page qui me pose un problème de
    headers already sent by
    j'ai beau refaire l'architecture dans tous les sens, je ne m'en sors pas.

    Je vous indique son schéma (les éléments essentiels), pour voir si qqn peut me dépanner :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    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
    <?php session_start();
    if (!isset($_SESSION['login'])) 
    { header ('Location: xxx.php');
        exit();
    }
    else
    {
    // on se connecte à notre base 
    // on prépare une requête pour pouvoir afficher ensuite les éléments
    // on lance la requête
    //récupération des résultats sous forme d'un tableau
    // on libère l'espace mémoire alloué pour cette interrogation de la base
    mysql_free_result ($req);
    mysql_close ();
    }
    ?>
    <html>
    <body>
    <table>
    <form method="post">
    <table>
     <tr> <td><?php echo $data['public']; ?></td></tr> //(plusieurs lignes sur ce même principe)
     <tr><td><input type="submit" name="modifier" value="Modifier"></td></tr>
    </table></form>
    <?php
    if (isset($_POST['modifier']) && $_POST['modifier'] == 'Modifier') 
    {
     // on se connecte à notre base 
    //verification qu'au moins un des champs est rempli
    // si c'est le cas, requête 
    // on ferme la connexion à la base
     header('Location: xxx.php');
    exit();
     mysql_close();
     } 
    ?>
     <table> </table>
    </table>
    </html>

    voilà grosso modo comment cette pages est construite.

    merci de votre aide, j'ai regardé des tutoriaux sur ce problème, mais je n'ai pas compris comment les appliquer.

  2. #2
    Expert éminent
    Avatar de Swoög
    Profil pro
    Inscrit en
    Janvier 2003
    Messages
    6 045
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : France

    Informations forums :
    Inscription : Janvier 2003
    Messages : 6 045
    Points : 8 339
    Points
    8 339
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    </table></form>
    <?php
    [...]
     header('Location: xxx.php');
    c'est normal, quand on envoie un header, il faut qu'il n'y ait eu AUCUN envoie au navigateur (autre que des headers)

  3. #3
    Inactif  
    Avatar de Kerod
    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    11 672
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 11 672
    Points : 20 778
    Points
    20 778
    Par défaut
    Vu que ton header est déjà envoyé tu pourrais pas le faire avec un javascript ? de ce style :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    echo "<script language='javascript'>window.location.href='xxx.php'</script>";
    C'est une solution parmi tant d'autre, et c'est la plus simple que je vois pour le moment

  4. #4
    Membre régulier Avatar de carelha
    Profil pro
    Inscrit en
    Mars 2006
    Messages
    168
    Détails du profil
    Informations personnelles :
    Localisation : France, Yvelines (Île de France)

    Informations forums :
    Inscription : Mars 2006
    Messages : 168
    Points : 109
    Points
    109
    Par défaut
    mais alors je ne comprends pas du tout comment je peux dans la même page :
    - vérifier que quelqu'un s'est bien identifié, et dans le cas contraire, le renvoyer vers la page d'accueil (donc header('Location: page1php'))

    - et mettre aussi un formulaire (method="post", renvoyant à la page même où il est intégré) et, une fois vérifié qu'il est bien rempli, renvoyer le visteur vers une autre page (donc header('Location: page2.php'))


    merci de ton aide

  5. #5
    Expert éminent
    Avatar de Swoög
    Profil pro
    Inscrit en
    Janvier 2003
    Messages
    6 045
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : France

    Informations forums :
    Inscription : Janvier 2003
    Messages : 6 045
    Points : 8 339
    Points
    8 339
    Par défaut
    suffit de faire le traitement avant d'envoyer le code HTML...

    ou d'utiliser la solution de Kerod ^^

  6. #6
    Membre régulier Avatar de carelha
    Profil pro
    Inscrit en
    Mars 2006
    Messages
    168
    Détails du profil
    Informations personnelles :
    Localisation : France, Yvelines (Île de France)

    Informations forums :
    Inscription : Mars 2006
    Messages : 168
    Points : 109
    Points
    109
    Par défaut
    merci, je suis passée par le javascript, car j'ai d'autres pages avec le même problème mais ou je ne peux pas déplacer la partie php( il me semble).

    Merci encore pour votre aide.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. sur AMEN : PHP et fonction header()
    Par zephira dans le forum Autres hébergeurs
    Réponses: 0
    Dernier message: 05/04/2011, 17h21
  2. fonction header qui ne redirige pas
    Par cels dans le forum Langage
    Réponses: 8
    Dernier message: 01/11/2006, 10h12
  3. La fonction BuilCriteria n'accepte pas les points
    Par Tofalu dans le forum Access
    Réponses: 3
    Dernier message: 10/07/2006, 12h00
  4. [PHP-JS] fonctionnement de la fonction 'header'
    Par enguerran dans le forum Langage
    Réponses: 8
    Dernier message: 02/06/2006, 08h10
  5. [PHP-JS] La fonction header()
    Par davinout dans le forum Langage
    Réponses: 16
    Dernier message: 16/05/2006, 07h43

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo