如何定義 $db 變數?我嘗試使用 connection_pdo.php 檔案中的 '$dsn' 變數,因為它看起來正確并且洗掉了未定義的變數通知。但是,prepare() 呼叫的致命錯誤仍然存??在。我已經閱讀了 $dbh->prepare(); 中的PDO::prepare和 '$dbh' 變數;根本沒有解釋。這是我的錯誤:
*注意:未定義變數:第 14 行 C:\xampp\htdocs\kami715\A10\customers.php 中的 db
致命錯誤:未捕獲的錯誤:在 C:\xampp\htdocs\kami715\A10\customers.php:14 中呼叫成員函式 prepare() 堆疊跟蹤:#0 {main} 在 C:\xampp\htdocs\ 中拋出kami715\A10\customers.php 第 14 行*
<!--query to pull in data-->
<?php
include('connection_pdo.php');
$query = "SELECT id, first_name, last_name FROM customers ORDER BY last_name asc";
$stmt = $db->prepare($query);
$stmt->execute();
$stmt->store_result();
?>
這是'connection_pdo.php':
<?php
// set up for using PDO
$user = 'root';
$pass = 'admin';
$host = 'localhost';
$db_name = 'grangerinc';
// set up DSN
$dsn = "mysql:host= $host; dbname= $db_name";
?>
uj5u.com熱心網友回復:
您的連接變數 $dsn 的定義不正確。此外,“store_result()”是一個 mysqli 函式,“include”運算式沒有正確使用。
<?php
include 'connection_pdo.php';
$query = "SELECT id, first_name, last_name FROM customers ORDER BY last_name asc";
$stmt = $dsn->prepare($query);
$stmt->execute();
$result = $stmt->fetchAll(PDO::FETCH_COLUMN, 0);
$stmt = null;
print_r($result);
?>
connection_pdo.php:
<?php
// set up for using PDO
$user = 'root';
$pass = 'admin';
$host = 'localhost';
$db_name = 'grangerinc';
// set up DSN
$dsn = new PDO('mysql:host='.$host.';dbname='.$db_name, $user, $pass);
?>
轉載請註明出處,本文鏈接:https://www.uj5u.com/net/531956.html
