我正在尝试slim3 PHP mico框架的示例。我有两条路线需要包含在index.php
中,第一条路线已成功添加,并且当我尝试添加第二条路线时,添加第二条路线中的所有路线均无法正常工作后,我在这里遇到问题,请参见下面的代码。
index.php
<?php
use \Psr\Http\Message\ServerRequestInterface as Request;
use \Psr\Http\Message\ResponseInterface as Response;
require 'vendor/autoload.php';
require 'src/config/db.php';
$app = new \Slim\App;
$app->get('/hello/{name}', function (Request $request, Response $response) {
$name = $request->getAttribute('name');
$response->getBody()->write("Hello, $name");
return $response;
});
// Customer Routes
require 'src/routes/customers.php';
require 'src/routes/resto.php';
$app->run();
和customers.php
<?php
use \Psr\Http\Message\ServerRequestInterface as Request;
use \Psr\Http\Message\ResponseInterface as Response;
date_default_timezone_set("Asia/Kolkata");
$app = new \Slim\App;
$app->options('/{routes:.+}', function ($request, $response, $args) {
return $response;
});
$app->add(function ($req, $res, $next) {
$response = $next($req, $res);
return $response
->withHeader('Access-Control-Allow-Origin', '*')
->withHeader('Access-Control-Allow-Headers', 'X-Requested-With, Content-Type, Accept, Origin, Authorization')
->withHeader('Access-Control-Allow-Methods', 'GET, POST, PUT, DELETE, OPTIONS');
});
// Get All Customers
$app->get('/customers/login/{userid}/{password}', function(Request $request, Response $response){
$userid = $request->getAttribute('userid');
$password = $request->getAttribute('password');
$sql = "SELECT * FROM user WHERE userid = :userid AND password = :password";
try{
// Get DB Object
$db = new db();
// Connect
$db = $db->connect();
$stmt = $db->prepare($sql);
$stmt->bindParam(':userid', $userid);
$stmt->bindParam(':password', $password);
$stmt->execute();
$customers = $stmt->fetch(PDO::FETCH_ASSOC);
if($stmt->rowCount()>0){
$data['success']= "true";
$data['name'] = $customers['name'];
$data['userid'] = $customers['userid'];
}else{
$data['success']= "false";
}
$db = null;
//echo $userid."-".$password;
echo json_encode($data);
} catch(PDOException $e){
echo '{"error": {"text": '.$e->getMessage().'}';
}
});
和我的resto.php
<?php
use \Psr\Http\Message\ServerRequestInterface as Request;
use \Psr\Http\Message\ResponseInterface as Response;
date_default_timezone_set("Asia/Kolkata");
$app = new \Slim\App;
$app->options('/{routes:.+}', function ($request, $response, $args) {
return $response;
});
$app->add(function ($req, $res, $next) {
$response = $next($req, $res);
return $response
->withHeader('Access-Control-Allow-Origin', '*')
->withHeader('Access-Control-Allow-Headers', 'X-Requested-With, Content-Type, Accept, Origin, Authorization')
->withHeader('Access-Control-Allow-Methods', 'GET, POST, PUT, DELETE, OPTIONS');
});
//get Menu
$app->get('/resto/menu/{restoid}', function(Request $request, Response $response){
$restoid = $request->getAttribute('restoid');
if($restoid == 1){
$menu = 'sairammenu';
}else if($restoid == 2){
$menu = 'newsatyammenu';
}else if($restoid == 3){
$menu = 'srivyafoodscmr';
}else if($restoid == 4){
$menu = 'satyammenu';
}else if($restoid == 5){
$menu = 'sairamrtc24x7';
}else if($restoid == 6){
$menu = 'lily';
}
$menusql = "SELECT * FROM $menu";
try{
// Get DB Object
$db = new db();
// Connect
$db = $db->connect();
$menu = $db->query($menusql);
$menulist=$menu->fetchall(PDO::FETCH_OBJ);
$db = null;
echo json_encode($menulist);
} catch(PDOException $e){
echo '{"error": {"text": '.$e->getMessage().'}';
}
});
其中只有一个正在工作。在这种情况下,我如何使用一条路线呢?>
我正在尝试slim3 PHP mico框架的示例。我有两条路由需要包含在index.php中,首先成功添加了一条路由,而当我尝试添加第二条路由时,我在这里遇到了问题...
尝试从“ customers.php和resto.php”中删除“ $ app = new \ Slim \ App;”