您好我正在嘗試在函數中使用預處理語句。我有下面的功能,它應該根據輸入的國家ID在一個數據庫中返回一個國家的詳細信息 - 然後我使用一個數組來獲取公司名稱。我不知道如何在使用預處理語句時從函數中輸出要用於數組的數據。我知道我錯過了一些基本的東西。請看下面。在函數中使用預處理語句
function findCountryname($countryID){
include 'connect.php';
$stmt = $conn->prepare("SELECT * FROM countries WHERE id=? and
pic!='NULL'");
$stmt->bind_param("i", $countryID);
$stmt->execute();
}
的 'connect.php' 文件由以下部分組成:
<?php
global $conn, $dbname, $username,$servername, $password;
$servername = "localhost";
$username = "root";
$password = "";
$dbname = "country";
$conn = new mysqli($servername, $username, $password, $dbname);
if ($conn->connect_error) {
die("Connection failed: " . $conn->connect_error);
}
?>
這是原來的功能:
function findCountryname($countryID){
$result = mysql_query("SELECT * FROM `countries` WHERE `id`=' $countryID '
and `pic` != 'nothing' ");
return $result;
}
mysqli execute將返回一個布爾值,而不是一個對象。 – Devon
@Devon正確,答案已更新。 – Akshay
仍然不正確,fetch_assoc是結果對象的函數,而不是stmt對象。 – Devon