Précédent   Forum des professionnels en informatique > PHP > PHP & SGBD > PHP & MySQL
PHP & MySQL Forum d'entraide sur les fonctions MySQL avec PHP. Avant de poster -> FAQ MySQL, Cours MySQL et Sources MySQL. Pour les questions concernant le moteur MySQL plutôt que les fonctions PHP, merci d'utiliser le forum MySQL.
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 20/07/2011, 10h56   #1
Membre habitué
 
Avatar de jlb59
 
Homme J-Luc
Retraité
Inscription : août 2004
Messages : 714
Détails du profil
Informations personnelles :
Nom : Homme J-Luc
Localisation : France, Nord (Nord Pas de Calais)

Informations professionnelles :
Activité : Retraité
Secteur : Industrie

Informations forums :
Inscription : août 2004
Messages : 714
Points : 123
Points : 123
Par défaut Comment imbriquer 2 scripts php

Bonjour à tous,

Je vais mettre dans mon site un espace membres et tous les fichiers pour cela sont dans un répertoire.

J'ai vu en furetant un peu partout, qu'il y avait la fonction ROOTPATH qui permet, logiquement, d'afficher la racine du site.
Code :
<?php echo ROOTPATH; ?>
Mais, comme je pense qu'il faut déclarer le chemin dans cette variable, je n'arrive pas à faire ça. En fait, je ne sais pas comment faire.

Comme je fais appel à cet accès,, il est nécessaire de faire un include.
Code :
<?php include("pages/membres/acces_membre.php"); ?>
Mais, ce que je ne sais pas faire, c'est imbriquer les 2 commandes !

J'ai essayé de faire ça :
Code :
<a href="< ?php echo ROOTPATH; ?>/pages/membres/acces_membres.php">Gérer mon compte</a>
mais ça va pas, parce quand mon curseur est dessus voilà ce qui s'affiche et de plus, la page est introuvable, pourtant, elle existe bel et bien !

Je ne comprends pas trop là !

Voulez-vous me dire comment faire ?

Merci d'avance de votre aide.
__________________
Cordialement.
JLB59

Analyse de la mémoire
jlb59 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 20/07/2011, 11h37   #2
Membre Expert
 
Avatar de gene69
 
Inscription : janvier 2006
Messages : 951
Détails du profil
Informations personnelles :
Localisation : France

Informations professionnelles :
Secteur : High Tech - Produits et services télécom et Internet

Informations forums :
Inscription : janvier 2006
Messages : 951
Points : 1 063
Points : 1 063
si ton rootpath est une vraie variable ceci est à mon avis la meilleure façon de faire:
Code php :
echo '<a href="',$ROOTPATH,'/pages/membres/acces_membres.php">Gérer mon compte</a>';

* ensuite si rootpath remplace le nom du serveur, il ne sert à rien.
* ensuite tu peux afficher des liens relatifs href="../autre/repertoire/" ça marche parfaitement.
* ensuite je te conseille de structurer ton application comme une application et non comme les informations qu'elle présente. (en gros les pages qui sont "visibles" dans un meme répertoire, les librairies dans un autre, le cache dans un autre, les images "chartre graphique" dans un autre etc... ça sera plus simple pour toi si quelque soit la page que tu affiches le lien vers le logo s'écrit tout le temps href="chartre/logo.png" que si celui-ci change en fonction de la page...


Code php :
<?php echo ROOTPATH; ?>
ceci est une constante... et sans DEFINE('ROOTPATH',''); elle n'est pas initialisée (c'est exactement ce que dit le message d'erreur).
__________________
PHP fait nativement la validation d'adresse électronique Vous êtes perdu en PHP? rassurez-vous ici (en)
Utilisez le bouton résolu!
gene69 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 20/07/2011, 11h44   #3
Membre Expert
 
Avatar de gene69
 
Inscription : janvier 2006
Messages : 951
Détails du profil
Informations personnelles :
Localisation : France

Informations professionnelles :
Secteur : High Tech - Produits et services télécom et Internet

Informations forums :
Inscription : janvier 2006
Messages : 951
Points : 1 063
Points : 1 063
alors le rootpath c'est une fonction:

Citation:
Envoyé par jlb59
il y avait la fonction ROOTPATH
ou une variable
Citation:
Envoyé par jlb59
il faut déclarer le chemin dans cette variable,
ou une constante
Citation:
Envoyé par jlb59
<?php echo ROOTPATH; ?>
ou quelque chose une clée dans le tableau $_SERVER ??????
__________________
PHP fait nativement la validation d'adresse électronique Vous êtes perdu en PHP? rassurez-vous ici (en)
Utilisez le bouton résolu!
gene69 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 20/07/2011, 12h47   #4
Membre habitué
 
Avatar de jlb59
 
Homme J-Luc
Retraité
Inscription : août 2004
Messages : 714
Détails du profil
Informations personnelles :
Nom : Homme J-Luc
Localisation : France, Nord (Nord Pas de Calais)

Informations professionnelles :
Activité : Retraité
Secteur : Industrie

Informations forums :
Inscription : août 2004
Messages : 714
Points : 123
Points : 123
Citation:
Envoyé par gene69 Voir le message
si ton rootpath est une vraie variable ceci est à mon avis la meilleure façon de faire:
Code php :
echo '<a href="',$ROOTPATH,'/pages/membres/acces_membres.php">Gérer mon compte</a>';

* ensuite si rootpath remplace le nom du serveur, il ne sert à rien.
* ensuite tu peux afficher des liens relatifs href="../autre/repertoire/" ça marche parfaitement.
* ensuite je te conseille de structurer ton application comme une application et non comme les informations qu'elle présente. (en gros les pages qui sont "visibles" dans un meme répertoire, les librairies dans un autre, le cache dans un autre, les images "chartre graphique" dans un autre etc... ça sera plus simple pour toi si quelque soit la page que tu affiches le lien vers le logo s'écrit tout le temps href="chartre/logo.png" que si celui-ci change en fonction de la page...
Tes explications semblent claires, mais j'ai du mal à m'y faire entre "constante" et "variable" !

Tu parles d'applications et d'informations, là, j'ai bien peur de ne pas comprendre exactement ce que tu veux dire.

En passant, j'ai retrouvé ça :
Code :
<?php define('ROOTPATH', 'http://'.$_SERVER['HTTP_HOST'], true); ?>
En fait, ce serait plutôt une constante non ?
__________________
Cordialement.
JLB59

Analyse de la mémoire
jlb59 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 20/07/2011, 13h24   #5
Membre actif
 
Homme
Inscription : avril 2011
Messages : 426
Détails du profil
Informations personnelles :
Sexe : Homme

Informations forums :
Inscription : avril 2011
Messages : 426
Points : 171
Points : 171
Bonjour,

De mon côté, j'utilise :

Code :
$racine = $_SERVER['DOCUMENT_ROOT'];
Et par exemple :

Code :
include($racine . '/inclusion/header.php');
heretik25 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 20/07/2011, 14h24   #6
Membre habitué
 
Avatar de jlb59
 
Homme J-Luc
Retraité
Inscription : août 2004
Messages : 714
Détails du profil
Informations personnelles :
Nom : Homme J-Luc
Localisation : France, Nord (Nord Pas de Calais)

Informations professionnelles :
Activité : Retraité
Secteur : Industrie

Informations forums :
Inscription : août 2004
Messages : 714
Points : 123
Points : 123
Citation:
Envoyé par heretik25 Voir le message
Bonjour,

De mon côté, j'utilise :

Code :
$racine = $_SERVER['DOCUMENT_ROOT'];
Et par exemple :

Code :
include($racine . '/inclusion/header.php');
Salut, ton idée est certainement bonne, mais c'est pas exactement ce que je recherche. Surtout pas ce chemin là !
Il est affiché : C:/Program Files/EasyPHP-5.3.6.1/www et ce chemin n'a rien à voir !
__________________
Cordialement.
JLB59

Analyse de la mémoire
jlb59 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 22/07/2011, 10h49   #7
Membre Expert
 
Avatar de gene69
 
Inscription : janvier 2006
Messages : 951
Détails du profil
Informations personnelles :
Localisation : France

Informations professionnelles :
Secteur : High Tech - Produits et services télécom et Internet

Informations forums :
Inscription : janvier 2006
Messages : 951
Points : 1 063
Points : 1 063
heuuu

dans $_SERVER ya a boire et a manger. ya le SERVER_NAME qui peut être omis, il y a le DOCUMENT_ROOT qui est le chemin par defaut des fichiers. l'un est d'usage interne, l'autre externe.

Quand je dis "structurer le code en fonction de l'application et non de la présentation" ça veux dire faire des fichiers avec uniquement des fonctions utiles, des classes et toutes les taches qui peuvent être centralisée.
tu utilises une arborescence qui devrait être simple et qui permettent une bonne compréhension de ce qui se passe.
Par exemple je defini toute mes classes dans un répertoire unique c'est pas très lisible mais j'utilise __autoload() (en fait l'autre fonction d'autoload) du coup cette fonction est très simple, j'ai le nom de la classe j'en déduit facilement dans quel fichier il faut aller chercher la définition.

constante, variable... ya un indice pourtant une variable commence par un $
exemple: variable simple: $nom, ou une variable de classe (interne): $this->nom ou une variable de classe (externe) $person->name.

ya des cours dans tous les sens sur le web pour ça.


ya pas de miracle, il faut un peu d’expérience... faire plusieurs essais et voir ce qui te convient le mieux.
__________________
PHP fait nativement la validation d'adresse électronique Vous êtes perdu en PHP? rassurez-vous ici (en)
Utilisez le bouton résolu!
gene69 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 22/07/2011, 12h09   #8
Membre habitué
 
Avatar de jlb59
 
Homme J-Luc
Retraité
Inscription : août 2004
Messages : 714
Détails du profil
Informations personnelles :
Nom : Homme J-Luc
Localisation : France, Nord (Nord Pas de Calais)

Informations professionnelles :
Activité : Retraité
Secteur : Industrie

Informations forums :
Inscription : août 2004
Messages : 714
Points : 123
Points : 123
Je n'ai pas trop saisi, mais je crois avoir fait la différence !

Concernant les cours, c'est effectivement possible, je vais voir ça !
__________________
Cordialement.
JLB59

Analyse de la mémoire
jlb59 est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 04h37.


 
 
 
 
Partenaires

Hébergement Web