【发布时间】:2017-06-20 12:47:13
【问题描述】:
如果我将代码从 mysql 更改为 mysqli,我是否也要更改 xampp 版本?我的 xampp 版本是 2.5.8。
因为我更改它们后,发生了许多错误,并且所有错误都指向'mysqli',例如:
mysqli_prepare()
mysqli_stmt_bind_param()
mysqli_stmt_execute()
mysqli_num_rows()
连接.php
<?php
session_start();
// *Peringatan jangan ubah fail ni..
$dbhost = "localhost"; //server untuk test
$dbuser = "root"; //user MYSQL
$dbpass = ""; //password MYSQL
$db = "sukandb"; //nama database
//tapi bila masuk ke dalam server kena tukar ikut keadaan server
$conn = new mysqli ($dbhost, $dbuser, $dbpass, $db);
if($conn->connect_error){
die("Connection failed : " . $conn->connect_error);
}
?>
所有错误都在这个文件中: index.php
<?php
ob_start();
include("connection.php");
if($_SESSION['LoggedIn']):
echo "Hello " .$_SESSION['nama'];
endif;
$query = mysqli_prepare("SELECT * FROM daftar_pengguna WHERE noic = ? AND
katalaluan = ?");
mysqli_stmt_bind_param($query, $_POST["noic"],md5($_POST["katalaluan"]));
mysqli_stmt_execute($query);
if(mysqli_num_rows($query) == 1)
{
$result = mysqli_fetch_assoc($query);
$_SESSION['userdetail']=$query;
$_SESSION['LoggedIn'] = true;
$_SESSION['nama'] = $result["nama"];
header("location:carianstatuspemohonresult.php");
exit;
}
else
{
echo "Salah nombor IC dan kata laluan";
}
?>
【问题讨论】:
-
能否发布您的错误信息。
-
当然。警告:mysqli_num_rows() 期望参数 1 为 mysqli_result 警告:mysqli_stmt_execute() 期望参数 1 为 mysqli_stmt,在警告中给出 null:mysqli_num_rows() 期望参数 1 为 mysqli_result,在中给出 null
-
这不是你如何使用prepared statement以及如何获取行数。
-
@LoganWayne 是哪一个?