我有两个文件:test.html和test.php
在html文件中我有一个链接,当点击链接时,它会将参数传递给angular控制器,该控制器包含一个函数,该函数将使用$ http.post将变量发布到test.php文件
在我的php文件中,我收到了值,我需要根据这个值执行数据库语句。
当我使用insert语句时,它工作正常:
$my = json_decode(file_get_contents("php://input"));
$id = $my->id;
require 'database.php';
$pdo = Database::connect();
$pdo->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
$sql = "INSERT INTO `my_database`.`persons` ( `person_id` ) VALUES(?)";
$q = $pdo->prepare($sql);
$q->execute(array($id));
成功添加到数据库的值。
但是当我使用这样的SELECT语句时:
$my = json_decode(file_get_contents("php://input"));
$id = $my->id;
require 'database.php';
$pdo = Database::connect();
$pdo->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
$sql = "SELECT * FROM persons where person_id = ?";
$q = $pdo->prepare($sql);
$q->execute(array($id));
$data[] = $q->fetch(PDO::FETCH_ASSOC);
print json_encode($data);
查询结果为:[false]
请注意,当我手动定义person_id的值时,select语句将工作并返回值。
我的意思如下:
$q->execute(array("17"));
任何解决方案?