Précédent   Forum des professionnels en informatique > PHP > Langage > Fichiers
Fichiers Forum d'entraide sur les fichiers avec PHP. Avant de poster -> FAQ fichiers et Sources fichiers
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 01/08/2007, 09h00   #1
Invité de passage
 
Inscription : août 2007
Messages : 3
Détails du profil
Informations forums :
Inscription : août 2007
Messages : 3
Points : 1
Points : 1
Par défaut Pseudo frames : n'affiche pas certaines pages

Bonjour,

Je suis en train de créer un site regroupant diverses pages déjà crées antérieurement! j'utilise dreamweaver (le dernier).
J'ai un menu horizontal, j'utilise un système de pseudo frames pour afficher les pages demandées en dessous.


Donc mon problème c'est que pour afficher une page située dans un autre répertoire du serveur (par rapport à ma page index située à la racine du serveur) ça ne fonctionne pas ou partiellement. Par exemple quand il s'agit d'afficher la page index (située dans un sous dossier) d'une galleries photo (http://nashmxs.free.fr/partiephotos/) là ça me renvoie cette erreur :
Code X :
1
2
3
4
5
6
7
8
9
Warning: main(./include/common.inc.php) [function.main]: failed to open stream: No such file or directory in /mnt/121/sdb/a/b/nashmxs/partiephotos/index.php on line 29

Warning: main() [function.include]: Failed opening './include/common.inc.php' for inclusion (include_path='/mnt/121/sdb/a/b/nashmxs/include:.:/usr/php4/lib/php') in /mnt/121/sdb/a/b/nashmxs/partiephotos/index.php on line 29

Warning: main(./include/section_init.inc.php) [function.main]: failed to open stream: No such file or directory in /mnt/121/sdb/a/b/nashmxs/partiephotos/index.php on line 30

Warning: main() [function.include]: Failed opening './include/section_init.inc.php' for inclusion (include_path='/mnt/121/sdb/a/b/nashmxs/include:.:/usr/php4/lib/php') in /mnt/121/sdb/a/b/nashmxs/partiephotos/index.php on line 30

Fatal error: Call to undefined function: trigger_action() in /mnt/121/sdb/a/b/nashmxs/partiephotos/index.php on line 32


Mon code marche très bien s'il s'agit d'afficher des pages à la racine du serveur.

Merci d'avance pour vos réponses!
Le site en question si vous voulez voir un peu ce que je cherches à faire :
http://nashmxs.free.fr
login : flo
pass : floflo
mxsmaximus est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 01/08/2007, 09h56   #2
Membre chevronné
 
Avatar de cadoudal56
 
Inscription : février 2005
Messages : 671
Détails du profil
Informations personnelles :
Âge : 40

Informations forums :
Inscription : février 2005
Messages : 671
Points : 646
Points : 646
Hello,

Dans ton script index.php a la ligne 29 et 30 tu dois chercher a atteindre les fichiers common.inc.php et section_init.inc.php avec une fonction include...

Si index.php est a la racine, il s'attends a trouver les fichiers dans le sous dossier include...

Bref il cherche les fichiers mais il ne les trouve pas...
A toi de réussir a trouver le moyen qu'il puisse y accéder.

Si comme je le suppose ton site a cette arborescence

include
-- common.inc.php
-- section_init.inc.php
partiephotos
--- index.php

Alors les appels a include devrait etre rédigé de cette manière dans le index.php :

Code :
1
2
3
 
include(../include/common.inc.php);
include(../include/section_init.inc.php);
@+
Cadou
__________________
PHP Competition System
Script de gestion de coupes et championnats
http://phpcompet.free.fr

Mon jeu de foot
cadoudal56 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 01/08/2007, 11h36   #3
Invité de passage
 
Inscription : août 2007
Messages : 3
Détails du profil
Informations forums :
Inscription : août 2007
Messages : 3
Points : 1
Points : 1
Merci mais En fait la structure de mon site est comme cela :

index.php (menu avec bouton avec fonction include qui renvoie vers partiephotos/index.php). J'utilises les pseudoframes pour préserver mon menu à l'affichage des pages du site.

partiephotos
--- index.php
--- include
------ common.inc.php
------ section_init.inc.php

Si jamais je vais directement sur la page index.php (sans passer par l'index.php à la racine du site) dans le répertoire partie photos tout marche bien pour l'affichage des photos.

si jamais je m'arrange pour mettre tous les fichiers à la racine du serveur ça marche, seulement je souhaite ne pas faire ça parce que sinon ça va être moins pratique pour gérer chaque partie du site.
mxsmaximus est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 01/08/2007, 13h29   #4
Membre chevronné
 
Avatar de cadoudal56
 
Inscription : février 2005
Messages : 671
Détails du profil
Informations personnelles :
Âge : 40

Informations forums :
Inscription : février 2005
Messages : 671
Points : 646
Points : 646
OK je vois le probleme.... Et je vois la solution mais cela ne va pas etre simple a expliquer.

Disons que index.php a la racine est index1 et que partiephotos/index.php est index2

Quand tu appelles index1, il prend pour partie de dire que tous les appels se font a partir de la racine, et si tu appelles index2 il part du principe que tous les appels se font depuis le répertoire partiephotos...

Donc si tu appelles index2 depuis index1, il va partir du principe que tous les appels doivent etre fait depuis la racine (puisque l'appel initial vient de index1).

Donc deux solutions.....
Soit tu déplaces include un niveau plus haut, ce que je ne penses pas que tu souhaites faire....

Soit tu te debrouille autrement, et là, ce sera de la bidouille. Par exemple quand tu appelles index2 depuix index1 tu peux essayer de voir si tu peux lui passer un paramètre en faisant un truc du style (dans le lien d'appel)

partiephotos/index.php?call=1

et effectuer une condition

Ou alors tu peux vérifier les chemin d'abord :
Code :
1
2
3
4
5
6
7
8
9
10
 
if (is_file('./include/common.inc.php') {
include('./include/common.inc.php');
}
elseif (is_file('./partiephotos/include/common.inc.php') {
include('./partiephotos/include/common.inc.php');
}
else {
echo "Houston on a un probleme";
}
Cependant certains te diront que ce n'est pas très clean... Mais au moins cela te dépannera surement. Disons que c'est plus un "pansement" qu'une solution que je te donne ici.

@+
PS : En theorie tu devrais avoir une variable globale qui définerait ton chemin d'appel...
__________________
PHP Competition System
Script de gestion de coupes et championnats
http://phpcompet.free.fr

Mon jeu de foot
cadoudal56 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 01/08/2007, 21h48   #5
Invité de passage
 
Inscription : août 2007
Messages : 3
Détails du profil
Informations forums :
Inscription : août 2007
Messages : 3
Points : 1
Points : 1
Merci bien
Je testerais ça ce week end !
mxsmaximus est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 08h29.


 
 
 
 
Partenaires

Hébergement Web