【发布时间】:2010-12-04 10:24:29
【问题描述】:
我正在开发一个网站,并试图在不重复使用 mod_rewrite 的情况下创建友好的 URL(因为我的客户服务器可能不允许这样做),我想出了这个系统:
index.php 需要一个名为 $seccion 的变量,它应该包含到具有特定部分的第二个文件的相对路径。这样我把静态的东西(页眉、页脚、侧边栏)都保存在 index.php 中,唯一改变的是中间的东西。
然后,如果你去 /signup 只有一个 index.php 有:
<? $seccion = 'signup.php'; @include '../index.php'; ?>
该 URL 将是 www.root.com/signup,但它实际上将包括 www.root.com/index.php 并在中心区域加载 www.root.com/signup.php。
这种安排也意味着每次我需要链接到一个文件时,我都必须使用绝对 URL。
问题是现在由于某种原因 POST 似乎无法正常工作。假设我在 www.root.com/signup 中有一个表单,并且操作是 www.root.com/welcome,它应该通过 POST 发送输入。好吧,信息永远不会通过。 PHP 返回 $_POST = Array( )
有什么想法吗?
edit:我忘了提到我之前在开发中已经遇到过同样的问题,我当时的解决方案是使用 ajax,并通过 jQuery 发送 POST 请求。这是一个优雅的解决方案,但不是我一直想要的。
【问题讨论】:
-
您的设置似乎不是问题所在。如果您将数据直接发布到 /welcome.php 会发生什么?
-
我会试一试,但我仍然需要将welcome.php 嵌入到index.php 中。正如我所说,index.php 包含所有静态内容。
标签: php post include friendly-url