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

EDI, CMS, Outils, Scripts et API PHP Discussion :

configuration EasyPHP [EasyPHP]


Sujet :

EDI, CMS, Outils, Scripts et API PHP

  1. #1
    Futur Membre du Club
    Profil pro
    Inscrit en
    Janvier 2005
    Messages
    3
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2005
    Messages : 3
    Par défaut configuration EasyPHP
    Bonjour, je debute en php et j'ai rencontre un petit probleme avec la focntion header(location...). J'obtiens le message d'erreur lorsque je teste le code avec easyphp 1.8 :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Warning:  Cannot modify header information - headers already sent by (output started at c:/...
    voila le code en question :
    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
    <?php session_start();
    ?>
    <html><body><pre>/* une partie du probleme */
    <?php
    print "Repondre aux questions et se faire embaucher par les ragondins\n";
    print "Question n°1 :\n";
    print "Quel est ton sexe ?";
    ?>
    <form action="./casting.php" method="post">
    <select name="choix">
    <option>Homme</option>
    <option>Femme</option>
    </select>
    <input type="submit" name="valid" value="rien">
    </form>
    <?php
    if($_POST["valid"])
    {
     $reponse=$_POST["choix"];
     if($reponse=="Homme")
     {
      $numQ=1;
      header("location:Toumou.php");
     }
    Apres quelques recherches, je me suis apercu que le fait de mettre du html avant la redirection posait probleme mais je n'ai pas bien compris pourquoi, si quelqu'un peut me l'expliquer.
    Ensuite, j'ai teste en ligne et la a ma grande surprise tout se passe tres bien. Est il possible de configurer Easyphp pour que ca fonctionne et si on peut m'expliquer d'ou vient le probleme, j'en serais heureux
    Merci

  2. #2
    Invité
    Invité(e)
    Par défaut


    http://php.developpez.com/faq/?page=...s_already_sent


    de chercher un peu avant de poster

  3. #3
    Membre émérite
    Profil pro
    Inscrit en
    Juillet 2005
    Messages
    774
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : Canada

    Informations forums :
    Inscription : Juillet 2005
    Messages : 774
    Par défaut
    en fait sur tou les systeme c'est comm ça. pour envoyer un entete au navigateur il faut pas qu'il y'ai déja un flux envoyé eu préalable. autrement il ne faut aucune instruction d'affichage a l'ecran avant header(location...).
    c'est donc pas une histoire de config de Easy 8)

  4. #4
    Membre chevronné Avatar de XtofRoland
    Profil pro
    Inscrit en
    Août 2005
    Messages
    357
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Août 2005
    Messages : 357
    Par défaut
    je ne sais pas pk ca fct en ligne, mais le header c'est soit ce qu'il y a entre tes balises <head></head>
    soit si tu te renseigne du coté des RFC le protocole http envoie sur le reseau des truc de ce genre:
    http version 1.0 GET ....
    (c'est pareil pour tout les protocole du reseau.)
    la redirection ph fait sans doute partie du protocole http... tu ne peux donc pas le mettre au milieu d'un script.

    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
    <?php session_start(); 
    if($_POST["valid"]) 
    { 
     $reponse=$_POST["choix"]; 
     if($reponse=="Homme") 
     { 
      $numQ=1; 
      header("location:Toumou.php"); 
     }
    ?> 
    <html><body><pre>/* une partie du probleme */ 
    <?php 
    print "Repondre aux questions et se faire embaucher par les ragondins\n"; 
    print "Question n°1 :\n"; 
    print "Quel est ton sexe ?"; 
    ?> 
    <form action="./casting.php" method="post"> 
    <select name="choix"> 
    <option>Homme</option> 
    <option>Femme</option> 
    </select> 
    <input type="submit" name="valid" value="rien"> 
    </form>
    essaye qqc comme ceci, ca a des chances de fonctionner.
    (envoyer le header avant le html.

  5. #5
    Membre chevronné Avatar de gofono_bass
    Inscrit en
    Décembre 2005
    Messages
    383
    Détails du profil
    Informations personnelles :
    Âge : 41

    Informations forums :
    Inscription : Décembre 2005
    Messages : 383
    Par défaut
    ou peut-etre, si t'es vraiment obligé de mettre ton header au milieu, quelque chose avec les fonctions ob_start() et ob_end_flush();

  6. #6
    Membre émérite
    Profil pro
    Inscrit en
    Juillet 2005
    Messages
    774
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : Canada

    Informations forums :
    Inscription : Juillet 2005
    Messages : 774
    Par défaut
    @XtofRoland
    je ne sais pas pk ca fct en ligne, mais le header c'est soit ce qu'il y a entre tes balises <head></head>
    soit si tu te renseigne du coté des RFC le protocole http envoie sur le reseau des truc de ce genre:
    http version 1.0 GET ....
    (c'est pareil pour tout les protocole du reseau.)
    la redirection ph fait sans doute partie du protocole http... tu ne peux donc pas le mettre au milieu d'un script.

    Code:
    <?php session_start();
    if($_POST["valid"])
    {
    $reponse=$_POST["choix"];
    if($reponse=="Homme")
    {
    $numQ=1;
    header("location:Toumou.php");
    }
    ?>
    <html><body><pre>/* une partie du probleme */
    <?php
    print "Repondre aux questions et se faire embaucher par les ragondins\n";
    print "Question n°1 :\n";
    print "Quel est ton sexe ?";
    ?>
    <form action="./casting.php" method="post">
    <select name="choix">
    <option>Homme</option>
    <option>Femme</option>
    </select>
    <input type="submit" name="valid" value="rien">
    </form>

    essaye qqc comme ceci, ca a des chances de fonctionner.
    (envoyer le header avant le html.
    seulement avec ça la page sera redirigé et le reste du code ne sera pas executé

  7. #7
    Futur Membre du Club
    Profil pro
    Inscrit en
    Janvier 2005
    Messages
    3
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2005
    Messages : 3
    Par défaut
    Merci de toutes ces reponses je testerais tout ca ce soir et vous tiendrais au courant

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

Discussions similaires

  1. [EasyPHP] Configuration EasyPHP sur server 2000
    Par AYMAN dans le forum EDI, CMS, Outils, Scripts et API
    Réponses: 3
    Dernier message: 12/06/2008, 12h05
  2. [EasyPHP] Configuration EasyPHP 1.8 pour rendre ma base de données accessible du réseau
    Par cdevl32 dans le forum EDI, CMS, Outils, Scripts et API
    Réponses: 9
    Dernier message: 09/03/2008, 23h04
  3. [EasyPHP] problème de configuration EasyPHP
    Par yann999 dans le forum EDI, CMS, Outils, Scripts et API
    Réponses: 1
    Dernier message: 10/05/2007, 00h58
  4. probleme en configuration easyphp
    Par sasaas dans le forum Autres langages pour le Web
    Réponses: 1
    Dernier message: 05/05/2007, 10h07
  5. [EasyPHP] configuration EasyPHP
    Par ushiwa.sasuke dans le forum EDI, CMS, Outils, Scripts et API
    Réponses: 2
    Dernier message: 05/12/2005, 15h22

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