Je dois realiser un site avec plusieurs pages, mon ancienne methode etait de
creer la structure du site (l'ossature) puis d'appeler l'intérieur avec des
includes en php.
ça fait donc www.monsite.php/page1.php
page1.php renvoyait vers le repertoire includes pour ouvrir structure.php +
include de page1.inc.php,
le probleme est que je me retrouve avec plein de fichiers dans la racine et
pareil dans include, ce qui est bien c'est pour le referencement avec les
noms des pages !
Sinon je peux faire : www.monsite.php/structure.php?page=page1
Super pour ma racine mais moins top pour google
Alors deux questions :
- Comment faites vous ou quelle est la methode la plus propre ?
- Comment faire comme certain site mettre le ? sans nom de fichier, exemple
: monsite.com/?action=products.collection.byCategory&id_category=5
Comment ils gerent aussi toutes cette ligne :
action=products.collection.byCategory&id_category=5
Donc si tu veux que ton machin marche, soit tu reconfigures PHP en mettant register_globals à "on",
non puisque tu as dit que ce n'était pas bien
soit tu écris : echo 'steph nous dit : '.$_GET['ASM'];
Purééee dis ! j'avais écrit :
'steph nous dit : '.$GET_['ASM'];
l'est pas fut fut ce php
-- Stephane Moriaux et son [moins] vieux Mac crient victoire
Peter Pan
ASM a écrit :
l'est pas fut fut ce php
Autant revenir carrément sur tous les standards du web, ça sera plus violent que d'insinuer que PHP a été mal implémenté ;-) Les variables d'environnement (dites super globales (car accessibles partout)) commencent par $_ c'est simple non ?
-- Pierre http://www.1966.fr/
ASM a écrit :
l'est pas fut fut ce php
Autant revenir carrément sur tous les standards du web, ça sera plus
violent que d'insinuer que PHP a été mal implémenté ;-)
Les variables d'environnement (dites super globales (car accessibles
partout)) commencent par $_ c'est simple non ?
Autant revenir carrément sur tous les standards du web, ça sera plus violent que d'insinuer que PHP a été mal implémenté ;-) Les variables d'environnement (dites super globales (car accessibles partout)) commencent par $_ c'est simple non ?
-- Pierre http://www.1966.fr/
Peter Pan
Nicolas a écrit :
Sinon je peux faire : www.monsite.php/structure.php?page=page1 Super pour ma racine mais moins top pour google
En effet. A moins de réécrire via .htaccess
- Comment faites vous ou quelle est la methode la plus propre ?
Je suis plutôt du genre, dans "mapage.php", inclusion de : inc.configuration.php (variables utilisées fréquemment) inc.connexion.php (variables de connexion bdd) inc.fonctions.php (comme son nom l'indique) [paramètres à passer dans la session si session] inc.session.php [paramètres à passer dans l'en-tête] inc.latete.php [blah blah echo if while tagada] inc.lepied.php
Tout à la racine (pratique pour l'édition) ou dans une répertoire dédié (généralement include/) en virant les "inc." ou "inc-" ou "inc_"
En général on évite les inclusions imbriquées.
- Comment faire comme certain site mettre le ? sans nom de fichier, exemple monsite.com/?action=products.collection.byCategory&id_category=5
Réécriture d'URL en passant par l'index. http://www.netalbum.org/album2.php vaut http://www.netalbum.org/?id=2 qui vaut http://www.netalbum.org/index.php?id=2
Comment ils gerent aussi toutes cette ligne : action=products.collection.byCategory&id_category=5
Les points dans les "query string" c'est bof. S'il faut passer des instructions (classement bdd par exemple) mieux vaut implémenter un "flag" genre : ordreÊteg où $_GET['ordre'] sera traduit en bonne et due forme (via switch par exemple).
-- Pierre http://www.1966.fr/
Nicolas a écrit :
Sinon je peux faire : www.monsite.php/structure.php?page=page1
Super pour ma racine mais moins top pour google
En effet. A moins de réécrire via .htaccess
- Comment faites vous ou quelle est la methode la plus propre ?
Je suis plutôt du genre, dans "mapage.php", inclusion de :
inc.configuration.php (variables utilisées fréquemment)
inc.connexion.php (variables de connexion bdd)
inc.fonctions.php (comme son nom l'indique)
[paramètres à passer dans la session si session]
inc.session.php
[paramètres à passer dans l'en-tête]
inc.latete.php
[blah blah echo if while tagada]
inc.lepied.php
Tout à la racine (pratique pour l'édition) ou dans une répertoire dédié
(généralement include/) en virant les "inc." ou "inc-" ou "inc_"
En général on évite les inclusions imbriquées.
- Comment faire comme certain site mettre le ? sans nom de fichier, exemple
monsite.com/?action=products.collection.byCategory&id_category=5
Réécriture d'URL en passant par l'index.
http://www.netalbum.org/album2.php vaut
http://www.netalbum.org/?id=2 qui vaut
http://www.netalbum.org/index.php?id=2
Comment ils gerent aussi toutes cette ligne :
action=products.collection.byCategory&id_category=5
Les points dans les "query string" c'est bof. S'il faut passer des
instructions (classement bdd par exemple) mieux vaut implémenter un
"flag" genre : ordreÊteg où $_GET['ordre'] sera traduit en bonne et
due forme (via switch par exemple).
Sinon je peux faire : www.monsite.php/structure.php?page=page1 Super pour ma racine mais moins top pour google
En effet. A moins de réécrire via .htaccess
- Comment faites vous ou quelle est la methode la plus propre ?
Je suis plutôt du genre, dans "mapage.php", inclusion de : inc.configuration.php (variables utilisées fréquemment) inc.connexion.php (variables de connexion bdd) inc.fonctions.php (comme son nom l'indique) [paramètres à passer dans la session si session] inc.session.php [paramètres à passer dans l'en-tête] inc.latete.php [blah blah echo if while tagada] inc.lepied.php
Tout à la racine (pratique pour l'édition) ou dans une répertoire dédié (généralement include/) en virant les "inc." ou "inc-" ou "inc_"
En général on évite les inclusions imbriquées.
- Comment faire comme certain site mettre le ? sans nom de fichier, exemple monsite.com/?action=products.collection.byCategory&id_category=5
Réécriture d'URL en passant par l'index. http://www.netalbum.org/album2.php vaut http://www.netalbum.org/?id=2 qui vaut http://www.netalbum.org/index.php?id=2
Comment ils gerent aussi toutes cette ligne : action=products.collection.byCategory&id_category=5
Les points dans les "query string" c'est bof. S'il faut passer des instructions (classement bdd par exemple) mieux vaut implémenter un "flag" genre : ordreÊteg où $_GET['ordre'] sera traduit en bonne et due forme (via switch par exemple).
-- Pierre http://www.1966.fr/
Nicolas
"Peter Pan" a écrit dans le message de news: 436fb757$0$25978$
Réécriture d'URL en passant par l'index. http://www.netalbum.org/album2.php vaut http://www.netalbum.org/?id=2 qui vaut http://www.netalbum.org/index.php?id=2
Merci à tous pour vos réponses et votre aide
Comment fonctionne la réécriture d'url svp ?
merci d'avance ! Nicolas
"Peter Pan" <no@spam.com> a écrit dans le message de news:
436fb757$0$25978$7a628cd7@news.club-internet.fr...
Réécriture d'URL en passant par l'index.
http://www.netalbum.org/album2.php vaut
http://www.netalbum.org/?id=2 qui vaut
http://www.netalbum.org/index.php?id=2
"Peter Pan" a écrit dans le message de news: 436fb757$0$25978$
Réécriture d'URL en passant par l'index. http://www.netalbum.org/album2.php vaut http://www.netalbum.org/?id=2 qui vaut http://www.netalbum.org/index.php?id=2
Merci à tous pour vos réponses et votre aide
Comment fonctionne la réécriture d'url svp ?
merci d'avance ! Nicolas
ASM
Peter Pan a écrit :
ASM a écrit :
l'est pas fut fut ce php
Autant revenir carrément sur tous les standards du web, ça sera plus violent que d'insinuer que PHP a été mal implémenté ;-)
c'est pourtant + ou - ce que j'ai ouï dire. Mais ... comme on a pu voir ... je n'y comprends pas gd chose
Les variables d'environnement (dites super globales (car accessibles partout)) commencent par $_ c'est simple non ?
Je croyais qu'en php tout commencait pas $ (sont assez affairistes les péhachepeurs)
l'underscore je pensais qu'il se mettait à la fin
donc les super globales sont un peu moins affairistes et il ne me reste qu'à trouver où chez php.net ou son cousin ils en cachent la liste et le mode d'emploi
-- Stephane Moriaux et son [moins] vieux Mac
Peter Pan a écrit :
ASM a écrit :
l'est pas fut fut ce php
Autant revenir carrément sur tous les standards du web, ça sera plus
violent que d'insinuer que PHP a été mal implémenté ;-)
c'est pourtant + ou - ce que j'ai ouï dire.
Mais ... comme on a pu voir ... je n'y comprends pas gd chose
Les variables d'environnement (dites super globales (car accessibles
partout)) commencent par $_ c'est simple non ?
Je croyais qu'en php tout commencait pas $
(sont assez affairistes les péhachepeurs)
l'underscore je pensais qu'il se mettait à la fin
donc les super globales sont un peu moins affairistes
et il ne me reste qu'à trouver où chez php.net ou son cousin
ils en cachent la liste et le mode d'emploi
Autant revenir carrément sur tous les standards du web, ça sera plus violent que d'insinuer que PHP a été mal implémenté ;-)
c'est pourtant + ou - ce que j'ai ouï dire. Mais ... comme on a pu voir ... je n'y comprends pas gd chose
Les variables d'environnement (dites super globales (car accessibles partout)) commencent par $_ c'est simple non ?
Je croyais qu'en php tout commencait pas $ (sont assez affairistes les péhachepeurs)
l'underscore je pensais qu'il se mettait à la fin
donc les super globales sont un peu moins affairistes et il ne me reste qu'à trouver où chez php.net ou son cousin ils en cachent la liste et le mode d'emploi
-- Stephane Moriaux et son [moins] vieux Mac
Olivier Masson
Thibaut Allender a écrit :
On 7/11/2005 18:06, ASM wrote :
ce sera pour la leçon suivante ...
en privé ou dans le groupe dédié à PHP alors, parce que sinon, on a pas fini ;-)
oui, d'autant plus que register_globals est à off par défaut maintenant pour des raisons de sécurité. D'ailleurs utiliser ça révèle qd même une program assez brouillonne je trouve.
Thibaut Allender a écrit :
On 7/11/2005 18:06, ASM wrote :
ce sera pour la leçon suivante ...
en privé ou dans le groupe dédié à PHP alors, parce que sinon, on a pas
fini ;-)
oui, d'autant plus que register_globals est à off par défaut maintenant
pour des raisons de sécurité.
D'ailleurs utiliser ça révèle qd même une program assez brouillonne je
trouve.
en privé ou dans le groupe dédié à PHP alors, parce que sinon, on a pas fini ;-)
oui, d'autant plus que register_globals est à off par défaut maintenant pour des raisons de sécurité. D'ailleurs utiliser ça révèle qd même une program assez brouillonne je trouve.
O.L.
ASM a présenté l'énoncé suivant : [...]
donc les super globales sont un peu moins affairistes et il ne me reste qu'à trouver où chez php.net ou son cousin ils en cachent la liste et le mode d'emploi
Pour info, j'ai la liste complète (je pense) dans mon manuel PHP téléchargeable à la rubrique "Variables prédéfinies" :
Tableaux superglobaux de PHP
$GLOBALS Contient une référence sur chaque variable qui est actuellement disponible dans l'environnement d'exécution global. Les clés de ce tableau sont les noms des variables globales.
$_SERVER Les variables fournies par le serveur web, ou bien directement liées à l'environnement d'exécution du script courant. C'est la nouvelle version de l'ancienne variable $HTTP_SERVER_VARS, qui est maintenant obsolète, mais toujours là.
$_GET Les variables fournies par le protocole HTTP en méthode GET. C'est la nouvelle version de l'ancienne variable $HTTP_GET_VARS qui est maintenant obsolète, mais toujours là.
$_POST Les variables fournies par le protocole HTTP en méthode POST. C'est la nouvelle version de l'ancienne variable $HTTP_POST_VARS qui est maintenant obsolète, mais toujours là.
$_COOKIE Les variables fournies par le protocole HTTP, dans les cookies. C'est la nouvelle version de l'ancienne variable $HTTP_COOKIE_VARS qui est maintenant obsolète, mais toujours là.
$_FILES Les variables fournies par le protocole HTTP, suite à un téléchargement de fichier. C'est la nouvelle version de l'ancienne variable $HTTP_POST_FILES qui est maintenant obsolète, mais toujours là. Voir Téléchargement par méthode POST, pour plus d'informations.
$_ENV Les variables fournies par l'environnement. C'est la nouvelle version de l'ancienne variable $HTTP_ENV_VARS qui est maintenant obsolète, mais toujours là.
$_REQUEST Les variables fournies au script par n'importe quel mécanisme d'entrée et qui ne doit recevoir une confiance limitée. Note : lorsque vous exécutez un script en ligne de commande, cette variable ne va pas inclure les variables argv et argc. Elles seront présentes dans la variable $_SERVER. La présence et la valeur des entrées de ce tableau sont réglés par la directive variables_order. Ce tableau n'est l'évolution d'aucune variable d'avant PHP 4.1.0.
$_SESSION Les variables qui sont actuellement enregistrées dans la session attachée au script. which are currently registered to a script's session.C'est la nouvelle version de l'ancienne variable $HTTP_SESSION_VARS. Voir le chapitre Sessions handling functions pour plus d'informations.
-- Olivier Ligny Créateur web free-lance / www.cyber-tamtam.net
ASM a présenté l'énoncé suivant :
[...]
donc les super globales sont un peu moins affairistes
et il ne me reste qu'à trouver où chez php.net ou son cousin
ils en cachent la liste et le mode d'emploi
Pour info, j'ai la liste complète (je pense) dans mon manuel PHP
téléchargeable à la rubrique "Variables prédéfinies" :
Tableaux superglobaux de PHP
$GLOBALS
Contient une référence sur chaque variable qui est actuellement
disponible dans l'environnement d'exécution global. Les clés de ce
tableau sont les noms des variables globales.
$_SERVER
Les variables fournies par le serveur web, ou bien directement liées à
l'environnement d'exécution du script courant. C'est la nouvelle
version de l'ancienne variable $HTTP_SERVER_VARS, qui est maintenant
obsolète, mais toujours là.
$_GET
Les variables fournies par le protocole HTTP en méthode GET. C'est la
nouvelle version de l'ancienne variable $HTTP_GET_VARS qui est
maintenant obsolète, mais toujours là.
$_POST
Les variables fournies par le protocole HTTP en méthode POST. C'est la
nouvelle version de l'ancienne variable $HTTP_POST_VARS qui est
maintenant obsolète, mais toujours là.
$_COOKIE
Les variables fournies par le protocole HTTP, dans les cookies. C'est
la nouvelle version de l'ancienne variable $HTTP_COOKIE_VARS qui est
maintenant obsolète, mais toujours là.
$_FILES
Les variables fournies par le protocole HTTP, suite à un téléchargement
de fichier. C'est la nouvelle version de l'ancienne variable
$HTTP_POST_FILES qui est maintenant obsolète, mais toujours là. Voir
Téléchargement par méthode POST, pour plus d'informations.
$_ENV
Les variables fournies par l'environnement. C'est la nouvelle version
de l'ancienne variable $HTTP_ENV_VARS qui est maintenant obsolète, mais
toujours là.
$_REQUEST
Les variables fournies au script par n'importe quel mécanisme d'entrée
et qui ne doit recevoir une confiance limitée. Note : lorsque vous
exécutez un script en ligne de commande, cette variable ne va pas
inclure les variables argv et argc. Elles seront présentes dans la
variable $_SERVER. La présence et la valeur des entrées de ce tableau
sont réglés par la directive variables_order. Ce tableau n'est
l'évolution d'aucune variable d'avant PHP 4.1.0.
$_SESSION
Les variables qui sont actuellement enregistrées dans la session
attachée au script. which are currently registered to a script's
session.C'est la nouvelle version de l'ancienne variable
$HTTP_SESSION_VARS. Voir le chapitre Sessions handling functions pour
plus d'informations.
--
Olivier Ligny
Créateur web free-lance / www.cyber-tamtam.net
donc les super globales sont un peu moins affairistes et il ne me reste qu'à trouver où chez php.net ou son cousin ils en cachent la liste et le mode d'emploi
Pour info, j'ai la liste complète (je pense) dans mon manuel PHP téléchargeable à la rubrique "Variables prédéfinies" :
Tableaux superglobaux de PHP
$GLOBALS Contient une référence sur chaque variable qui est actuellement disponible dans l'environnement d'exécution global. Les clés de ce tableau sont les noms des variables globales.
$_SERVER Les variables fournies par le serveur web, ou bien directement liées à l'environnement d'exécution du script courant. C'est la nouvelle version de l'ancienne variable $HTTP_SERVER_VARS, qui est maintenant obsolète, mais toujours là.
$_GET Les variables fournies par le protocole HTTP en méthode GET. C'est la nouvelle version de l'ancienne variable $HTTP_GET_VARS qui est maintenant obsolète, mais toujours là.
$_POST Les variables fournies par le protocole HTTP en méthode POST. C'est la nouvelle version de l'ancienne variable $HTTP_POST_VARS qui est maintenant obsolète, mais toujours là.
$_COOKIE Les variables fournies par le protocole HTTP, dans les cookies. C'est la nouvelle version de l'ancienne variable $HTTP_COOKIE_VARS qui est maintenant obsolète, mais toujours là.
$_FILES Les variables fournies par le protocole HTTP, suite à un téléchargement de fichier. C'est la nouvelle version de l'ancienne variable $HTTP_POST_FILES qui est maintenant obsolète, mais toujours là. Voir Téléchargement par méthode POST, pour plus d'informations.
$_ENV Les variables fournies par l'environnement. C'est la nouvelle version de l'ancienne variable $HTTP_ENV_VARS qui est maintenant obsolète, mais toujours là.
$_REQUEST Les variables fournies au script par n'importe quel mécanisme d'entrée et qui ne doit recevoir une confiance limitée. Note : lorsque vous exécutez un script en ligne de commande, cette variable ne va pas inclure les variables argv et argc. Elles seront présentes dans la variable $_SERVER. La présence et la valeur des entrées de ce tableau sont réglés par la directive variables_order. Ce tableau n'est l'évolution d'aucune variable d'avant PHP 4.1.0.
$_SESSION Les variables qui sont actuellement enregistrées dans la session attachée au script. which are currently registered to a script's session.C'est la nouvelle version de l'ancienne variable $HTTP_SESSION_VARS. Voir le chapitre Sessions handling functions pour plus d'informations.
-- Olivier Ligny Créateur web free-lance / www.cyber-tamtam.net
O.L.
Thibaut Allender a couché sur son écran :
On 7/11/2005 18:12, O.L. wrote :
PS : et donc si register_globals est à "off", mister Nicolas pourra récupérer la valeur de ses paramètres passés dans l'URL, en utilisant les variables $_GET et $_POST qui sont automatiquement remplies avec *tout* ce qu'on passe en "paramètre d'URL" et en champs de formulaires.
En register_globals On aussi...
Oui
-- Olivier Ligny Créateur web free-lance / www.cyber-tamtam.net
Thibaut Allender a couché sur son écran :
On 7/11/2005 18:12, O.L. wrote :
PS : et donc si register_globals est à "off", mister Nicolas pourra
récupérer la valeur de ses paramètres passés dans l'URL, en utilisant les
variables $_GET et $_POST qui sont automatiquement remplies avec *tout* ce
qu'on passe en "paramètre d'URL" et en champs de formulaires.
En register_globals On aussi...
Oui
--
Olivier Ligny
Créateur web free-lance / www.cyber-tamtam.net
PS : et donc si register_globals est à "off", mister Nicolas pourra récupérer la valeur de ses paramètres passés dans l'URL, en utilisant les variables $_GET et $_POST qui sont automatiquement remplies avec *tout* ce qu'on passe en "paramètre d'URL" et en champs de formulaires.
En register_globals On aussi...
Oui
-- Olivier Ligny Créateur web free-lance / www.cyber-tamtam.net
O.L.
Dans son message précédent, Olivier Masson a écrit :
Thibaut Allender a écrit :
On 7/11/2005 18:06, ASM wrote :
ce sera pour la leçon suivante ...
en privé ou dans le groupe dédié à PHP alors, parce que sinon, on a pas fini ;-)
oui, d'autant plus que register_globals est à off par défaut maintenant pour des raisons de sécurité. D'ailleurs utiliser ça révèle qd même une program assez brouillonne je trouve.
"assez brouillonne", pfff :-p Moi j'trouve ça bien plus pratique, et c'est moins long d'écrire $var que $_POST["var"] ... Pi il suffit de bien écrire son code et de se protéger, en initialisant sas variables au début du script comme il faut.
-- Olivier Ligny Créateur web free-lance / www.cyber-tamtam.net
Dans son message précédent, Olivier Masson a écrit :
Thibaut Allender a écrit :
On 7/11/2005 18:06, ASM wrote :
ce sera pour la leçon suivante ...
en privé ou dans le groupe dédié à PHP alors, parce que sinon, on a pas
fini ;-)
oui, d'autant plus que register_globals est à off par défaut maintenant pour
des raisons de sécurité.
D'ailleurs utiliser ça révèle qd même une program assez brouillonne je
trouve.
"assez brouillonne", pfff :-p
Moi j'trouve ça bien plus pratique, et c'est moins long d'écrire $var
que $_POST["var"] ... Pi il suffit de bien écrire son code et de se
protéger, en initialisant sas variables au début du script comme il
faut.
--
Olivier Ligny
Créateur web free-lance / www.cyber-tamtam.net
Dans son message précédent, Olivier Masson a écrit :
Thibaut Allender a écrit :
On 7/11/2005 18:06, ASM wrote :
ce sera pour la leçon suivante ...
en privé ou dans le groupe dédié à PHP alors, parce que sinon, on a pas fini ;-)
oui, d'autant plus que register_globals est à off par défaut maintenant pour des raisons de sécurité. D'ailleurs utiliser ça révèle qd même une program assez brouillonne je trouve.
"assez brouillonne", pfff :-p Moi j'trouve ça bien plus pratique, et c'est moins long d'écrire $var que $_POST["var"] ... Pi il suffit de bien écrire son code et de se protéger, en initialisant sas variables au début du script comme il faut.
-- Olivier Ligny Créateur web free-lance / www.cyber-tamtam.net