inclusion conditionnelle en PHP?

inclusion conditionnelle en PHP? - PHP - Programmation

Marsh Posté le 15-03-2005 à 12:28:32    

salut,
Est ce que c est possible d'inclure un fichier que si une condition est verifiée?
 

Code :
  1. //Si le mail existe on lui demande de le changer
  2. if ($found)
  3. {
  4. echo "trouvé!!";
  5. header("Location: enr_coordonnees.php?compte=0&msg=mail_existant" );
  6. }
  7. //On envoie un mail de confirmation de creation de compte si c un nouveau client et seulement si le mail est nouveau
  8. if ($_GET["type"]=="0" )
  9.  {
  10.  //On envoie un mail d'activation de compte
  11.  include "creation_mail_compte.php";
  12.  header("Location: client.php?msg=4" );
  13.  }
  14.  //on lui confirme la mise a jour de son compte
  15. else if($_GET["type"]=="1" )
  16.  {
  17.  echo "Votre compte a bien été mis à jour";
  18.  header("Location: choix.php" );
  19.  }
  20. }


 
Le probleme c'est que include

Code :
  1. "creation_mail_compte.php;"

est lancée toujours meme si le header

Code :
  1. header("Location: enr_coordonnees.php?compte=0&msg=mail_existant" )

est executé???
 
Un include est il donc obligatoirement processé???

Reply

Marsh Posté le 15-03-2005 à 12:28:32   

Reply

Marsh Posté le 15-03-2005 à 12:46:11    

Mets un exit après ton header [:spamafote]
 
Normalement, l'include devrait se faire au moment de l'instruction.

Reply

Marsh Posté le 15-03-2005 à 17:33:42    

Encore un qui semble n'avoir rien compris aux header, vas-y que je te fais une sortie avant une redirection (ligne 4 et 19) :sarcastic:

Reply

Marsh Posté le 15-03-2005 à 19:17:47    

PETOZAK> Un header ne doti surtout pas être envoyé si une quelconque info a déjà été envoyée au serveur (même l'affichage d'un simple espace ou d'un saut de ligne).
 
Avec ton truc, tu vas surtout te tapper un "header already sent" ...


---------------
Gamertag: CoteBlack YeLL
Reply

Marsh Posté le 21-03-2005 à 14:19:40    

naceroth a écrit :

Encore un qui semble n'avoir rien compris aux header, vas-y que je te fais une sortie avant une redirection (ligne 4 et 19) :sarcastic:


 
tu es un peu stupide toi??
Tu savais que les echo servaient aussi a debugger?
J'y crois pas bientot tu vas m'apprendre a faire des affectations :p.
 
$i=1;
C'est bon Monsieur je sais tout? :p


Message édité par PETOZAK le 21-03-2005 à 14:20:15
Reply

Marsh Posté le 21-03-2005 à 14:29:57    

PETOZAK a écrit :

tu es un peu stupide toi??
Tu savais que les echo servaient aussi a debugger?
J'y crois pas bientot tu vas m'apprendre a faire des affectations :p.
 
$i=1;
C'est bon Monsieur je sais tout? :p


 :pfff:  
 
Il vient de t'expliquer qu'il ne fallait jamais faire de echo avant un header location ;)


Message édité par FlorentG le 21-03-2005 à 14:30:07
Reply

Marsh Posté le 21-03-2005 à 15:08:59    

oui mais ca c'est evident, ce que je lui ai c'est que c'est pour le debug c'est tout ;)
Il me prend vraiment pour un 3eme qui a fait de la prog pour la premiere fois cet été en colo :p

Reply

Marsh Posté le 21-03-2005 à 15:17:16    

... MAIS TU PEUX PAS FAIRE DE HEADER LOCATION APRES UN ECHO §§§§ C'est normal que ça marche pas ;)

Reply

Marsh Posté le 21-03-2005 à 15:38:47    

mais oui florent sauf que c'est commenté en temps normal ;)

Reply

Marsh Posté le 21-03-2005 à 17:55:01    

PETOZAK a écrit :

tu es un peu stupide toi??
Tu savais que les echo servaient aussi a debugger?
J'y crois pas bientot tu vas m'apprendre a faire des affectations :p.
 
$i=1;
C'est bon Monsieur je sais tout? :p


 
Après le coup de la serialization, le commentaire sur ma stupidité tu peux te le garder pour toi.
 
Puis, ton code "c'est pour le debug", ouais, bien sûr, c'est marqué dans l'exemple, c'est tellement rare comme erreur que j'avais pas de raison de douter de la grande connaissance de monsieur qui vient nous demander si un include est systématiquement processé...

Reply

Marsh Posté le 21-03-2005 à 17:55:01   

Reply

Marsh Posté le 06-06-2005 à 10:27:36    

Voila la reponse trouve dans l'aide PHP ;)

Code :
  1. <?php
  2. // Ceci est FAUX et échouera
  3. if ($condition)
  4.     include $file;
  5. else
  6.     include $other;
  7. // Ceci est CORRECT.
  8. if ($condition) {
  9.     include $file;
  10. } else {
  11.     include $other;
  12. }
  13. ?>

Reply

Marsh Posté le 06-06-2005 à 10:41:48    

Voila Naceroth pour t'apprendre la pedagogie :p

Reply

Marsh Posté le 06-06-2005 à 10:42:19    

Et c'était ça ton problème ??! Juste une question d'accolade ??
 
Et tu te permets de sortir des trucs du genre "Il me prend vraiment pour un 3eme qui a fait de la prog pour la premiere fois cet été en colo " :lol: ROFL :heink:
 
Bref, passons ...


---------------
Gamertag: CoteBlack YeLL
Reply

Marsh Posté le 06-06-2005 à 12:08:08    

Et il sort d'où ton $_GET["type"]? au debut tu testes sur $found. Pourquoi ne pas continuer?
 
Et commente le header(), meme si c'est du debug.


---------------
MZP est de retour
Reply

Marsh Posté le 06-06-2005 à 12:22:11    

Non seulement ça vient nous les briser parceque c'est pas capable de faire un script juste ... bon il est debutant, on l'a tous été, on l'excuse, mais il est pas capable de se taper une recherche de 5 min (deja la ça demande la pelle a clous) mais en plus apres ça vient faire la morale a des gens qui eux savent programmer ... non mais ce genre de mec ça me sidere ...


---------------
Si la vérité est découverte par quelqu'un d'autre,elle perd toujours un peu d'attrait
Reply

Marsh Posté le 06-06-2005 à 12:45:56    

:D, c'est toi qui me sidère  
C'est juste un malentendu...
La question était plus de savoir le fonctionnement de l'include... etait il prepocessé par un module qui faitdu copier coller? Peut on faire des inclusions conditionnelles?...
 
Si tu reflechissais un peu au lieu de te precipiter tu te serais rendu compte du sens de la question...
 
Maintenant au moins je sais qu'il y a 2 routines d'interpretation en PHP :)

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed