使用URL内容将数据(post或get)发送到PHP页面

时间:2009-12-06 19:05:25

标签: php mysql apache mod-rewrite

好的,我正在创建一个由/ manage上的单个用户管理的问卷调查应用程序。在那里,他可以创建多个问卷,每个问卷都有不同的名称和一组设置(注册用户,问题,数据等)。目前,通过转至/index.php?t=Questionnaire%20Name,非管理用户(测试的接受者)可以访问不同的测试。显然,这不是给用户的最佳界面。我希望用户能够通过转到/ QuestonnaireName来访问该测试。我觉得这可以用mod-rewrite完成,但我不知道如何使用它或从哪里开始。我用JS,PHP和MySQL编写了整个代码。任何帮助表示赞赏。感谢。

2 个答案:

答案 0 :(得分:1)

这是一个让你前进的例子:

Options +FollowSymLinks
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php?$1

将此文件放在名为.htaccess的文件中,与index.php位于同一目录中。现在,您调用的所有内容都将路由到index.php,您可以使用$_SERVER['QUERY_STRING']获取该网址。然后你可以自由地做任何你想做的事。

替代方法,为了避免您对index.php进行编辑:

Options +FollowSymLinks
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php?t=$1

请注意t=之后的index.php?。现在一切都可以从$_GET['t']找到,但我无法保证这将是万无一失的,因为我自己没有使用过这种方法。测试一下,看看它是否适合你。

修改

编辑以允许访问物理目录。

答案 1 :(得分:0)

你必须使用mod_rewrite:

使用示例(德语,我没有找到更好的解决方案): http://www.handcode.de/talks/phpug-mod_rewrite-20080312/slide-38.html