<?php
$username = '***';
$password = '***';
$database = '***';
$hostname = 'localhost';
$stock_symbol = '1301.T';
$dbh = new PDO("mysql:host=$hostname;dbname=$database", $username, $password);
$stmt = "SELECT * FROM `price/volume` WHERE `stock_symbol`=:stock_symbol";
$stmt->bindParam(':stock_symbol', $stock_symbol, PDO::PARAM_STR);
$stmt->execute();
$result = $stmt->fetchALL(PDO::FETCH_ASSOC);
echo json_encode($result);
?>
我是一名初学者,并试图为我的网站创建一个简单的PHP API。以上是API代码。当我在浏览器上运行API时出现错误:
致命错误:未捕获错误:调用/ storage / ssd3 / 769 / /public_html/api.php:10中的字符串上的成员函数bindParam()堆栈跟踪:#storage {s} / ssd3 / 769 /第10行的public_html / api.php
发布于 2018-07-27 15:44:35
你应该prepare()
在绑定占位符之前调用。$dbh
包含数据库连接。
修改版
<?php
try {
$dbh = new PDO("mysql:host=$hostname;dbname=$database", $username, $password);
$stmt = "SELECT * FROM `price/volume` WHERE `stock_symbol`=:stock_symbol";
$qryResult = $dbh->prepare($stmt);
$qryResult->bindParam(':stock_symbol', $stock_symbol, PDO::PARAM_STR);
$qryResult->execute();
$result = $qryResult->fetchALL(PDO::FETCH_ASSOC);
echo json_encode($result);
} catch (PDOException $pdoe) {
echo ($pdoe->getMessage());
exit;
}
https://stackoverflow.com/questions/-100001703
复制相似问题