Un lien => Switch

Eléphant du PHP | 52 Messages

15 févr. 2008, 23:38

Bonjour,
Je souhaîte créé un site en PHP & HTML. Mais mon problème n'est pas là. Mon site est presque terminé mais les liens sont comme ça :
http://.../resources/1/plugins/plugin_25.zip
ou
http://.../resources/index.php

Mais souhaîte avoir des liens différents, comme ceci ;
http://.../index.php?add=Resources
ou
http://.../index.php?add=Downloads

Je crois que celà s'appelle un "switch", j'ai fais plusieurs recherche, je trouvé des trucs mais beaucoups d'ereur. Donc si vous connaissez un bon code qui fonctionne pour mes pages sa serait sympas. :)

Merci.

Modérateur PHPfrance
Modérateur PHPfrance | 7636 Messages

15 févr. 2008, 23:45

C'est des pseudos-frames dont tu parles ?! :-k

/!\ Avant de poster se documenter et rechercher.
Qui ne sait pas rendre un service n'a pas le droit d'en demander.
MaBrute

Eléphant du PHP | 52 Messages

16 févr. 2008, 00:54

Oui voila

Eléphant du PHP | 52 Messages

29 févr. 2008, 23:15

Euh un ami m'as passé un bout de code que je dois intégrer dans une page mais ça marche pas :
<?php
$site = array (
	'site="?site=0'
	'site="?site=1'
)
exit();

if (isset($_GET["site"])) $dark = $_GET["site"];
else $site = 0;

switch ($site) {
case 1 : include("index.php"); break;
case 2 : include("downloads.php"); break;
default : include("index.php"); break;
}

<a href="?site=Downloads">Téléchargements</a>
?>
Pouvez-vous m'aider ? :wink:

ViPHP
ViPHP | 4674 Messages

29 févr. 2008, 23:51

Ton bout de code n'a pas de sens.
Il y a plein de fautes et de non-sens.

Ce que je te conseille c'est de lire le lien de notre ami Truc et de te mettre à PHP :).
Il n'existe pas de code tout fait pour ce genre de chose, tu dois le construire toi-même. Il existe plusieurs solutions, avec des différences plus ou moins importantes, mais il faut mettre en avant la sécurité et la souplesse (modularité).

Vraiment, apprend le PHP et lis le lien de Truc, tu trouveras la réponse par toi même :).
« Un handicap est le résultat d'une rencontre entre une déficience ou différence et une incapacité de la société à répondre à celle-ci. »

Hoa : http://hoa-project.net (sur @hoaproject).

Eléphant du PHP | 52 Messages

20 mars 2008, 23:33

Bonjour,

J'ai lus le tuto sur les Pseudos Frames et j'ai réussis ! :) Mais le problème c'est que je sais pas comment faire ceci :

Pour un fichier à télécharger :
au lieu de ça :
fichier/fichier.zip
je souhaite:
index.php?page=downloads&pg=001

J'utilise le code de sécruté biensur :wink: Tout mes liens en Pseudo Fram fonctionne.
index.php?page=news
index.php?page=jeux
....

8-) Merci de votre aide

ViPHP
ViPHP | 4674 Messages

21 mars 2008, 00:22

Bonsoir,

sur ta page download.php (accès via $_GET['page']) tu proposes de télécharger l'archive qui a pour ID 001 dans une base de données quelconque. Non ?
« Un handicap est le résultat d'une rencontre entre une déficience ou différence et une incapacité de la société à répondre à celle-ci. »

Hoa : http://hoa-project.net (sur @hoaproject).

Eléphant du PHP | 52 Messages

21 mars 2008, 08:52

Je ne sais pas, j'utilise aucune base de donnée. C'est obligatoire d'avoir une base de donnée pour ça ?

ViPHP
ViPHP | 4674 Messages

21 mars 2008, 09:17

Non mais c'est conseillé.

Comme tes noms de fichier seraient des identifiants, ils n'auraient pas tellement de sens, alors autant avoir une base de données pour ajouter une description du fichier, l'auteur, la date, des commentaires si besoin, une note etc.
« Un handicap est le résultat d'une rencontre entre une déficience ou différence et une incapacité de la société à répondre à celle-ci. »

Hoa : http://hoa-project.net (sur @hoaproject).

Eléphant du PHP | 52 Messages

21 mars 2008, 12:44

Ok Ok, t'aurais pas un tuto ? :-k

EDIT: Je voulai savoir si les pseudo frame (les codes) sur le tuto que m'as passé Truc sont valable pour la version php5 et 6 ?

ViPHP
ViPHP | 4674 Messages

21 mars 2008, 16:25

Ok Ok, t'aurais pas un tuto ? :-k
À vrai dire, non. Je n'y ai même jamais réfléchis. Mais si tu sais un livre d'or, tu sais faire ça. Tu récupères ton ID par URL, tu le protèges, tu fais une requête auprès de ta base de données etc. Toujours la même chose.
EDIT: Je voulai savoir si les pseudo frame (les codes) sur le tuto que m'as passé Truc sont valable pour la version php5 et 6 ?
Bien sûr que oui :). PHP 6 n'est pas prêt d'arriver, tu as encore un peu de temps devant toi.
« Un handicap est le résultat d'une rencontre entre une déficience ou différence et une incapacité de la société à répondre à celle-ci. »

Hoa : http://hoa-project.net (sur @hoaproject).

Eléphant du PHP | 52 Messages

21 mars 2008, 23:26

Ok ça marche je vais me lancer dans le livre d'or alors :ordi:

Euh question, pour les pseudo frames, j'ai vu qu'il est obligé de mettre toute les pages dans le tableau array mais il existe pas un système ... Comment dire #-o ... Que dans un dossier nommé par exemple "modules" et que tout les sous-dossiers soit le titre.

Exemple :

Normalement dans le tableau array je dois mettre :
$pageOK = array('news' => 'news.php',
                          'accueil' => 'accueil.php');
etc.... ... .
Alors est-ce possible de faire en sorte, que tout les sous-dossiers de Module soit directement dans le tableau array. Celà m'évitera de les écrirent tous...
Exemple :
/modules/news/ - /modules/news/index.php =
index.php?page=news

le paramétre des pseudos frame cherche directement toute les pages dans le dossiers modules.
Si tu ne comprend pas, je vais essayé de mieux m'expliquer.

ViPHP
ViPHP | 4674 Messages

24 mars 2008, 22:45

Bonsoir et désolé pour la réponse tardive (occupé à pelleter ;-)),

tout d'abord : oui, ce n'est pas d'une grande clarté.
Sache que tu n'es pas obligé de préciser toutes tes pages dans un tableau. Tu peux très bien récupérer les valeurs des paramètres URL, tu les protèges (basename() & co.), et tu vérifies si le fichier existe (file_exists()). Si oui, alors on l'inclue, sinon, une erreur.

Il faut bien faire attention avec cette technique car il ne faut pas inclure n'importe quoi. Il faut retrouver le nom du fichier sans parcours de dossier (../ par exemple), ni extension (.php par exemple), et pas d'URL (http:// par exemple). C'est plus compliqué à protéger mais c'est plus facile à maintenir par la suite. Il faut vraiment imaginer tous les cas, même les plus fous (virer les caractères étranges, comme \0 etc.).

Il existe beaucoup de solutions à ce problème :).

Edit : sinon tu peux enregistrer toutes tes pages dans une base de données, c'est déjà plus facile à maintenir et c'est plus sécurisé (mais plus lent) :).
« Un handicap est le résultat d'une rencontre entre une déficience ou différence et une incapacité de la société à répondre à celle-ci. »

Hoa : http://hoa-project.net (sur @hoaproject).

Eléphant du PHP | 52 Messages

25 mars 2008, 14:03

:boire4: Woooaaaa ... Le problème c'est que je mis connais rien en 'Base de donnée'.
T'aurais pas le bout de code de ce que tu vien de m'expliquer ? Car je pige la moitier...

ViPHP
ViPHP | 4674 Messages

25 mars 2008, 16:47

Va jeter un œil du côté du SiteduZero.com, ils ont plus le temps que moi pour t'expliquer ça ;-). Tu peux également visiter PHPDebutant.org.

Mais si jamais, quelle partie aimerais-tu que je t'explique ?
« Un handicap est le résultat d'une rencontre entre une déficience ou différence et une incapacité de la société à répondre à celle-ci. »

Hoa : http://hoa-project.net (sur @hoaproject).