2010-10-09 7 views
0

Je commence à développer un site web en tant que projet personnel, pour découvrir un peu les technologies web. Ma question est plus sur "comment faire les choses propres" qu'une question technique.Y compris un fichier basé sur le lien cliqué

Voici la chose:

Disons qu'une page index.php comprendra un autre menu.php, qui permettra de naviguer sur le site.

Mon apparence index.php comme ça, au fond:

include("header"); 
include("menu"); 
include("DEPENDING ON WHICH LINK AS BEEN CLICKED FROM THE MENU"); 
include("bottom"); 

Pour éviter la méthode POST, et ont beaucoup de choses sur mon URL, je voudrais le faire d'une autre façon, mais je Je ne sais pas quel est le meilleur.

Je pensais à déclarer une variable comme $ page, quand un lien est cliqué, je peux faire quelque chose comme "si $ page == home", puis j'inclus la page home.php ... etc ...

Je ne sais pas si ma question est claire ... Je sais qu'il apparaît comme très facile et question débutant, mais je ne sais même pas où regarder ...

savez-vous si je peut trouver n'importe quel "site Web open source" afin que je puisse étudier le code et voir les meilleures pratiques à ce sujet?

P.S .: Désolé pour mon anglais qui n'est probablement pas parfait du tout, je travaille dessus.

Répondre

1

Vous pouvez avoir un menu comme

<a href="?view=home">Home</a> 
<a href="?view=home">About</a> 

ensuite votre code PHP

include $_GET["view"] . ".php"; 

Note que je ne valident pas, de sorte que tout paramètre passé sur l'URL serait en mesure d'inclure tout fichier. Le $_GET renvoie les valeurs transmises à la page via l'URL.

Le $_POST renvoie les valeurs affichées.

Le $_REQUEST renvoie les valeurs $_GET et $_POST.

Un bon endroit pour étudier de nombreuses langues est W3Schools, vous pourriez vérifier là parfois.

+0

Ce que je voudrais faire est d'éviter d'avoir quelque chose comme? View = home sur mon URL, je voudrais qu'il reste propre. Mais je ne sais pas comment faire ça. Mon menu est une table avec le href dedans, alors comment puis-je actualiser seulement le Centre de ma page, qui contiendra toujours le contenu principal, concernant quel lien le visiteur cliquera? – user393381

+0

Vous voulez charger la page en utilisant ajax? Cette page http://orkutmanager.net/#v=home utilise jQuery pour ajouter un gestionnaire sur toutes les balises 'a'. Les modifications du gestionnaire font une requête ajax et lancent le résultat dans le div # content. Vous pouvez voir la source pour voir comment c'est fait ... 'Fonction LoadPage (hash)' – BrunoLM

0

Faire une page qui sera la page de redirection commune.

Chaque message viendra à cette page et basé sur le paramètre de la page, il redirigera.

Ainsi l'action de chaque page est le même, mais sur la base de la page paramter redirect à laquelle jamais la page que vous souhaitez

Vous pouvez changer la casse et

tête d'utilisation pour rediriger

je pense que vous voulez éviter la méthode GET et éviter des trucs beaucoup dans l'URL

pour apprendre

Je pense que c'est le site simple pour l'apprenant .

http://www.w3schools.com/php/default.asp

http://www.plus2net.com/php_tutorial/site_map.php

http://www.tizag.com/phpT/

fait la plupart de ces sites sont les mêmes.

J'espère que vous connaissez le site Web de base PHP.net

Ensuite ,, .. n'est faible niveau ..every bas niveau sera en haut niveau .. une jours comme vous tente aussi:)

+0

Merci beaucoup pour votre aide et les docs :) – user393381

0

Salut vous devriez s'il vous plaît poser une question à la fois:

Je pense que ce tutoriel de base vous donnera une bonne idée sur la façon et ce qu'il faut utiliser include(); func.

http://www.w3schools.com/php/php_includes.asp

J'ai commencé avec:

http://www.solitude.dk/filethingie/

Très simple administrateur de fichiers .php.

Vous devriez vérifier définitivement sourceforge, colletion géante de projets open source juste filtrer par php (rechercher littéralement n'importe quoi).

Je voulais juste mentionner que vous pouvez télécharger le code complet des pages plus complexes (qui sont basés sur php) comme

wordpress (plate-forme de blogs) - très facile à installer et à configurer identi.ca (twitter ouvert source alternave) Vous pouvez maintenant télécharger le code source de reddit - assez facile à.

Peut-être que vous ne pourrez pas les modifier immeditelly mais theyll vous aider à obtenir l'image

0

Ne faites pas ce que vous essayez de faire. Le but d'avoir des pages est de gérer des choses avec des fichiers différents. C'est-à-dire que vous aurez quelques points communs entre les fichiers (traités par le préfixe automatique et inclure le chemin, potentiellement) comme votre en-tête et pied de page. Chaque fichier devrait inclure ceci et l'imprimer directement. En d'autres termes, vous ne devez pas gérer tout sur une seule page, puis inclure un fichier sous certaines conditions. Envoyez simplement les utilisateurs sur une page différente.

Enfin, je recommande de ne pas diviser les fichiers d'en-tête/pied de page du tout.Au lieu de cela, créez un décorateur qui enveloppe le contenu principal et l'affiche tous en même temps. Quelque chose comme:

$page = <<<HTML 
<html><head><title></title></head> 
<body> 
    <div id="top nav"></div> 
    {CONTENT} 
</body> 
</html> 
HTML; 

Ensuite, vous allez à travers et construire le contenu de votre page. Ensuite, vous l'ajoutez au CONTENT dans le décorateur et l'imprimez. PHPTAL est un excellent moyen d'avoir ce traitement externe.

+0

OK Merci beaucoup pour votre aide. Donc, comme je l'ai compris, je ne devrais pas diviser mon en-tête, la page du bas et le menu en différents fichiers php, puis les inclure? N'est-ce pas redondant? Au lieu de cela, je vais avoir ma page d'index statique, avec une seule section qui inclura une page différente concernant l'endroit où je suis dans le menu. Ou devrais-je faire autant de pages qu'il y a d'éléments dans le menu, et avoir toujours tout statique sur chacun d'eux? – user393381

+0

C'est fou! Je ne connais aucun site Web qui fasse ce que vous essayez de faire. Comment prévoyez-vous d'inclure efficacement la bonne page à chaque fois sans problèmes significatifs? –

+0

Que suggérez-vous? D'un autre côté, si j'ai 10 pages sur mon site web, et si un jour je veux changer de menu ou d'autres choses statiques, je devrai le faire pour chaque page. – user393381

Questions connexes