Direction -Chemin fichier racine - PHP-Yosemite

Résolu/Fermé
mik12ED
Messages postés
36
Date d'inscription
mercredi 15 juillet 2015
Statut
Membre
Dernière intervention
8 mars 2016
- 20 août 2015 à 15:10
mik12ED
Messages postés
36
Date d'inscription
mercredi 15 juillet 2015
Statut
Membre
Dernière intervention
8 mars 2016
- 1 sept. 2015 à 19:09
Bonjour tout le monde,

J'ai un énorme pb j'ai demandé a bcp de monde de l'aide, on a toujours aucune solution :(

Je vous explique:

J'ai un Mac Yosemite, la direction des fichiers, les include et les require ne se font pas correctement.

Tous mes docs se trouvent dans un dossier Sites(là ou on inclue tous les docs PHP de tous les projets).

J'ai donc créé un projet qui s'appelle emploi.

Dans le dossier emploi, j'ai un dossier candidats, recruteurs, et autres.

Dans le dossier candidats j'ai un dossier souhaits.

Dans le dossier souhaits, j'ai voulu mettre plusieurs sous -dossiers histoire de bien organiser le répertoire vous voyez ?

Les sous-dossiers sont les dossiers suivants:

- include (inclut un header_souhaits.php, footer.php)

- souhait 1

- souhait 2

- souhait 3

- souhait 4

- souhait 5.

Dans souhait 1: j'ai un fichier souhait_candidats1.php, codephp_souhait1, edition_souhaits.candidats.php.

Comment, dans ma page souhait_candidats1.php je peux appeler le souhait_candidats2 qui se trouve dans le dossier 2 et comme j'inclus svp un include header quand sur ma page j'ai le message d'erreur suivant :

"Warning: include(includes/header_souhaits.php): failed to open stream: No such file or directory in/Users/michaelaidan/Sites/emploi/candidats/souhaits/souhait1/souhait_candidats1.php on line 6


Warning: include(): Failed opening 'includes/header_souhaits.php' for inclusion (include_path='.:/Applications/MAMP/bin/php/php5.6.10/lib/php') in/Users/michaelaidan/Sites/emploi/candidats/souhaits/souhait1/souhait_candidats1.php on line 6"

?

Merci beaucoup

1 réponse

Pitet
Messages postés
2826
Date d'inscription
lundi 11 février 2013
Statut
Membre
Dernière intervention
21 juillet 2022
543
21 août 2015 à 09:18
Salut,

Essaye de renseigner le chemin absolu vers tes fichiers :
include '/Users/michaelaidan/Sites/emploi/candidats/include/header_souhaits.php';


Bonne journée
0
mik12ED
Messages postés
36
Date d'inscription
mercredi 15 juillet 2015
Statut
Membre
Dernière intervention
8 mars 2016

21 août 2015 à 12:00
J'ai deja essayé Pitet comment indiques tu un chemin relatif grace a un dossier parent ou dossier différent qui inclue deja un dossier parent en PHP ?
Merci
0
Pitet
Messages postés
2826
Date d'inscription
lundi 11 février 2013
Statut
Membre
Dernière intervention
21 juillet 2022
543
21 août 2015 à 17:21
Le chemin relatif dépend du point d'entrée de ton application, autrement dit cela dépend du fichier appelé pour voir ton site.

Si tu accèdes à ton site via l'url http://localhost/Sites/candidats/souhaits/souhait 1/souhait_candidats1.php, le point d'entrée est donc le fichier souhait_candidats1.php. Il faut donc partir de ce fichier pour inclure les autres fichiers en relatif.
Par exemple pour inclure le fichier souhait_candidats2.php situé dans souhait 2, on peut utiliser le chemin :
// le point d'entrée est souhait_candidats1.php, donc nous sommes dans le dossier "souhait 1"
// '../souhait 2/souhait_candidats2.php' -> grâce au .. on remonte d'un niveau, on arrive dans le dossier "souhaits", puis on va chercher souhait_candidats2.php dans le dossier "souhait 2"
include '../souhait 2/souhait_candidats2.php';
0
mik12ED
Messages postés
36
Date d'inscription
mercredi 15 juillet 2015
Statut
Membre
Dernière intervention
8 mars 2016

21 août 2015 à 18:25
Merci Pitet, j'ai appris que require est plus sécurisé, tu pourrais me donner le meme exemple pour require stp ? merci
0
Pitet
Messages postés
2826
Date d'inscription
lundi 11 février 2013
Statut
Membre
Dernière intervention
21 juillet 2022
543
24 août 2015 à 11:20
L'utilisation de require est identique à include, seul le retour d'erreur diffère.

https://www.php.net/manual/fr/function.require.php
0
mik12ED
Messages postés
36
Date d'inscription
mercredi 15 juillet 2015
Statut
Membre
Dernière intervention
8 mars 2016

1 sept. 2015 à 19:09
Merci pitet
0