Page 1 sur 1

Fonction permettant d'appeler (d'ouvrir) un autre fichier.

Posté : 20 juin 2007, 07:37
par Grenouille32
Bonjour,

Quelqu'un connaîtrait-il une fonction permettant d'ouvrir un autre fichier si une condition est remplie ?
Ex. Si mot de passe ok
Ouvre fichier xxx
sinon...

Merci pour vos lumières.

Posté : 20 juin 2007, 09:59
par Cyrano
Non, il n'y a pas de fonction. Le déroulement sera donc le suivant :

Code : Tout sélectionner

Si motdepasse OK fichier = xxx; Sinon fichier = yyy; ouvrir fichier

Génial...

Posté : 20 juin 2007, 15:14
par Invité
Mais c'est quoi la commande pour "fichier ouvrir" ???

Posté : 20 juin 2007, 15:20
par béka
tu peux faire un truc du genre
if (condition1 == 'cequetuveux')
{
include ('tonfichier.php');
}
elseif (condition2 == 'cequetuveux2')
{
include ('tonfichier2.php');
}
else {
header ("Location: index.php"); //retour à l'accueil
}
moi j'opterais pour un truc simple comme ca

Super.

Posté : 20 juin 2007, 15:36
par Invité
Merci Beka.
La fonction Header fonctionne parfaitement.
Juste une dernière question (quoi qu'il me suffirait d'aller chercher sur le Net), mais quelle différence entre la fonction Header et Include ?

Posté : 20 juin 2007, 15:53
par béka
effectivement, tu l'as dit, tu aurais la réponse en cherchant sur internet.
il me semble que header redirige alors que include l'inclu dans ta page

Ce qu'il y a de bien avec l'informatique, c'est que ça ne

Posté : 20 juin 2007, 16:07
par Invité
Ce qu'il y a de bien avec l'informatique, c'est que ça ne fonctionne jamais !!!

J'avais parlé trop vite Béka...
La fct Header fonctionnait bien... testée seule !
Une fois incluse dans une condition, je reçois un message d'erreur
"Warning: Cannot modify header information - headers already sent by (output started at /mnt/100/sdc/d/b/f.hin/secret/base.php:8) in /mnt/100/sdc/d/b/f.hin/acces.php on line 34"
Pourtant le fichier "acces.php" ne contient aucune instruction de type Header (puisque je ne la connaissais pas encore).

Une idée ?

Header ne fonctionne que si l'instruction figure en première

Posté : 20 juin 2007, 16:20
par Invité
Header ne fonctionne que si l'instruction figure en première ligne du fichier...
Donc, message d'erreur si placé après une condition !

Re: Header ne fonctionne que si l'instruction figure en prem

Posté : 20 juin 2007, 16:40
par zeus
Header ne fonctionne que si l'instruction figure en première ligne du fichier...
Donc, message d'erreur si placé après une condition !
Pas vraiment non ;)

header() ne fonctionne que si aucun entête HTTP n'a été envoyé au navigateur.
Ces entêtes sont envoyés dès que quelque chose est affiché (via un echo par exemple), ou simplement par la présence d'un saut de ligne ou un espace avant une balise <?php ;)

Posté : 20 juin 2007, 16:42
par béka
effectivement, ce que j'ai proposé n'est pas très judicieux.

Enfin la solution...

Posté : 20 juin 2007, 18:24
par Invité
Ce n'est pas du PHP... mais ça fonctionne !!!

<META HTTP-EQUIV="Refresh" CONTENT="0;URL=NOM_DE_LA_PAGE.EXT">

Merci tout de même.