我正在为我的项目使用 Slim framework 。我已将Slim文件夹复制到我的项目目录中。
以下是我遇到的代码:
HTML code(multiplemethods.html):
<html>
<head>
<title>Multiple Methods Routing Demo</title>
</head>
<body>
<form action="multiplemethodsroute.php/products" method="GET">
product id <input type="text" name="id" />
<br/>
<input type="submit" />
</form>
</body>
</html>
PHP代码(multiplemethodsroute.php):
<?php
require 'Slim/Slim.php';
/* Invoke the static "registerAutoloader()" function defined within Slim class.
* Register the autoloader is very important.
* Without doing it nothing will work.
*/
\Slim\Slim::registerAutoloader();
//Instantiate Slim class in order to get a reference for the object.
$application = new \Slim\Slim();
$application->map(
'products(/:id)',
function()
{
global $application;
$id = $application->request->get('id');
if($id == null)
{
$id = $application->request->post('id');
}
echo "showing info about product #".$id;
})->via('GET','POST');
$application->run();
?>
两个文件即。 multiplemethods.html和multiplemethodsroute.php存在于位于/var/www/slimsamples
的同一目录“slimsamples”
当我通过输入一些数字9565665提交HTML表单时,浏览器窗口中会出现 404 Page not found 消息。
控件不会进入为map编写的函数内部。我在调试过程中对此进行了测试
有人可以找出我在这里犯的错误吗?
提前致谢。
答案 0 :(得分:2)
根据Slim文档,您缺少前导/:
$application->map('/products(/:id)') ...