Php POST请求出现500内部服务器错误-Slim框架
Php POST请求出现500内部服务器错误-Slim框架,php,rest,post,slim,Php,Rest,Post,Slim,我正在尝试用Slim框架构建一个简单的REST应用程序,但是当我尝试执行POST请求时,我遇到了500个错误。到目前为止,我已经实现了两个工作GET请求。代码如下: index.php: require_once '../include/DbHandler.php'; require '.././libs/Slim/Slim.php'; \Slim\Slim::registerAutoloader(); $app = new \Slim\Slim(); $app->get("/",
我正在尝试用Slim框架构建一个简单的REST应用程序,但是当我尝试执行POST请求时,我遇到了500个错误。到目前为止,我已经实现了两个工作GET请求。代码如下: index.php:
require_once '../include/DbHandler.php';
require '.././libs/Slim/Slim.php';
\Slim\Slim::registerAutoloader();
$app = new \Slim\Slim();
$app->get("/", function () {
echo "<h1>Hello!!!!</h1>";
});
/**
* Get all the events
* method GET
* url /events
*/
$app->get('/events', function() {
$db = new DbHandler();
$response = array();
// fetch events
$result = $db->getAllEvents();
if ($result != NULL) {
$response["error"] = false;
$response = $result;
echoResponse(200, $response);
} else {
$response["error"] = true;
$response["message"] = "The requested resource doesn't exists";
echoResponse(404, $response);
}
});
$app->get('/event/:id', function ($id) {
$response = array();
$db = new DbHandler();
// fetch event
$result = $db->getEvent($id);
if ($result != NULL) {
$response["error"] = false;
$response = $result;
echoResponse(200, $response);
} else {
$response["error"] = true;
$response["message"] = "The requested resource doesn't exists";
echoResponse(404, $response);
}
});
$app->post('/events', function() {
// opening db connection
$db = new DbConnect();
//$db = new DbHandler();
$request = Slim::getInstance()->request();
//$result = $db->addEvent($request);
$event = json_decode($request->getBody());
$img = " ";
$sql = "INSERT INTO event (title, location, date_event, ageMin, ageMax, groupSize, limited, maxParticipants, joining, description, img, type, language) VALUES (".$event->title.", ".$event->location.", ".$event->date_event.", ".$event->ageMin.", ".$event->ageMax.", ".$event->ageMax.", ".$event->limited.", ".$event->maxParticipants.", ".$event->joining.", ".$event->description.", ".$img.", "$event->type", ".$event->language.")";
try {
//$db = $this->conn;
$conn = $db->connect();
$result = $conn->query($sql);
$event->id = $conn->lastInsertId();
echoResponse(200, $event->id);
} catch(PDOException $e) {
echoResponse(404, '{"error":{"text":'. $e->getMessage() .'}}');
}
});
/**
* Echoing json response to client
* @param String $status_code Http response code
* @param Int $response Json response
*/
function echoResponse($status_code, $response) {
$app = \Slim\Slim::getInstance();
// Http response code
$app->status($status_code);
// setting response content type to json
$app->contentType('application/json');
echo json_encode($response);
}
$app->run();
?>
我收到500内部服务器错误
,我无法理解原因。我哪里做错了?
谢谢 您在
$sql
作业中遗漏了“$event->type”
周围的连接点
在开发过程中,我建议您启用错误和警告消息添加
error_reporting(E_ALL);
ini_set('display_errors', 1);
到您的代码
PHP语法检查:解析错误:语法错误,第62行代码中出现意外的“$event”(T_变量)
更容易理解,而不是
500内部服务器错误
另一种选择是,如果您有一小段代码要检查,您可以使用一些在线工具,如您在
$sql
作业中遗漏了“$event->type”
周围的连接点
在开发过程中,我建议您启用错误和警告消息添加
error_reporting(E_ALL);
ini_set('display_errors', 1);
到您的代码
PHP语法检查:解析错误:语法错误,第62行代码中出现意外的“$event”(T_变量)
更容易理解,而不是
500内部服务器错误
或者,如果您有一小段代码要检查,您可以使用一些在线工具,如如何获取此消息
PHP语法检查:解析错误:语法错误,第62行代码中意外的“$event”(T_变量)。
?你用命令了吗?我刚用过。但正如我所说的,我建议您在开发环境中启用错误报告。还有其他的SO问题。您是如何得到这条消息的?PHP语法检查:解析错误:语法错误,第62行代码中出现意外的“$event”(T_变量)。
?你用命令了吗?我刚用过。但正如我所说的,我建议您在开发环境中启用错误报告。还有其他问题。