2010-10-09 62 views
0

我开始开发一个网站作为个人项目,发现一点网络技术。我的问题更多的是关于“如何让事情变得干净”而不是技术问题。包括一个基于点击链接的文件

这里是东西:

比方说,一个index.php页面将包括其他menu.php,这将允许浏览的网站。

我的index.php这个样子的,基本上是:

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

为了避免POST方法,并有很多东西在我的网址,我想这样做的其他方式,但我做的不知道什么是最好的。

我想过声明一个像$ page这样的变量,当点击一个链接时,我可以做一些类似“if $ page == home”的东西,然后我包含home.php页面......等等......

我不知道我的问题是清楚的...我知道,它会出现一个非常容易和初学者的问题,但我甚至不知道去哪里找......

你知道,如果我可以找到任何“开源网站”,以便我可以研究代码并查看有关它的最佳实践?

P.S .:对不起,我的英语可能并不完美,我正在努力。

回答

1

你可以有你的PHP代码

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

注意,我没有验证像

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

然后菜单,所以在URL传递的任何参数将能够包括任何文件。

$_GET返回通过URL传递给页面的值。

$_POST返回值发布。

$_REQUEST返回$_GET$_POST值。

学习多种语言的好地方是​​,你可以在那里查一下。

+0

我想要做的是避免在我的网址上看到类似于view = home的内容,我希望它保持干净。但我不知道该怎么做。我的菜单是一张带有href的表格,因此如何才能刷新我的页面中心,该页面始终包含主要内容,即访客将点击哪个链接? – user393381 2010-10-09 22:59:11

+0

你想使用Ajax加载页面?此页面http://orkutmanager.net/#v=home使用jQuery在所有'a'标签上添加处理程序。处理程序的更改会生成一个ajax请求,并将结果放在'#content' div中。您可以查看源代码以了解它是如何完成的......'功能LoadPage(散列)' – BrunoLM 2010-10-09 23:45:26

0

制作一个页面,这将是常见的重定向页面。

每篇文章都会到达该页面,并基于它将重定向的页面参数。

,让每个网页的动作是一样的,但基于页面放慢参数重定向到你想

您可以切换情况和

用头重定向

我想你想这永远页避免GET方法,避免很多的东西,在URL

对于学习

我认为这是一个简单的网站学习。

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

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

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

其实大多数所有这些网站都是相同的。

我希望你知道基本的网站PHP.net

然后,, ..没有人是低级别..every低的水平将是一个顶级1天..就像你我也尝试: )

+0

非常感谢您的帮助和文档:) – user393381 2010-10-09 03:40:33

0

嗨,你应该请一次问一个问题:

我觉得这个基本教程会给你怎样和如何使用include)一个好主意(; FUNC。

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

我开始:

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

很简单的PHP文件管理员。

你应该检查一下sourceforge,巨大的开源项目收集只是由php过滤(字面上任何东西搜索)。

只是想提一提,你可以下载更复杂的页面的完整代码(即是基于PHP)像

的WordPress(博客平台) - 非常容易安装和配置 identi.ca(叽叽喳喳开源交替) 你现在可以下载reddit的源代码 - 很容易。

也许你不会成为能够immeditelly修改他们,但他们将帮助你得到的图片

0

不要做你正在尝试做的。有页面的全部要点是处理不同文件的事情。也就是说,你将在文件之间有一些共同点(可能会通过自动前置和包含路径来处理),比如页眉和页脚。每个文件应该包含它自己并直接打印出来。

也就是说,你不应该处理一个页面上的所有内容,然后有条件地包含一个文件。只需将用户转到其他页面即可。

最后,我建议不要分割页眉/页脚文件。相反,创建一个包装主要内容并一次显示它的装饰器。例如:

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

然后,您会浏览并构建您的页面内容。然后将它添加到装饰器中的CONTENT并打印出来。 PHPTAL是对外进行处理的好方法。

+0

好的非常感谢您的帮助。 所以据我了解,我不应该将我的标题,底部页面和菜单分成不同的PHP文件,然后包含它们?它不是多余的吗? 而不是我会有我的静态索引页,我认为,只有一个部分,将包括一个不同的页面,关于我在菜单上的位置。 或者我应该尽可能多的页面,因为菜单上有项目,并且每个项目都有静态的东西? – user393381 2010-10-09 21:41:20

+0

这太疯狂了!我不知道有任何网站可以做你想做的事。你打算如何有效地包含正确的页面,每次都没有任何重大问题? – 2010-10-09 23:48:18

+0

你会建议什么?另一方面,如果我在我的网站上有10个页面,并且如果有一天我想对菜单或其他静态内容进行更改,那么我将不得不为每个页面执行此操作。 – user393381 2010-10-09 23:52:58