【问题标题】:Changing PDO to Mysqli [duplicate]将 PDO 更改为 Mysqli [重复]
【发布时间】:2020-01-29 11:31:18
【问题描述】:

我想将 PDO 代码转换为 mysqli 并遇到一些问题。我还是新手,我真的不完全了解 PDO。

$query = "INSERT INTO gender(gender) VALUES (:gender)";
$statement = $conn->prepare($query);
$statement->execute(array('gender' => $_POST["gender"]));
$count = $statement->rowCount();

这是我得到的。

$statement = $db->prepare ($query);;
$statement = array('gender' => $_POST["gender"]);
$count=mysqli_num_rows($query);
$statement = mysqli_fetch_array ($query);

【问题讨论】:

  • 意见:PDO 是更好的 SQL 包装器,使用 mysqli 是一个倒退。当然我不知道你为什么要这样做的细节......
  • @MiK 这更像是一个事实。

标签: php mysqli pdo


【解决方案1】:

试试这个版本:

$query = "INSERT INTO gender(gender) VALUES (?)";
$stmt = $mysqli->prepare($query);
$stmt->bind_param("s", $_POST["gender"]);
$stmt->execute();
$stmt->close();

您需要使用bind_param() 函数将参数绑定到您的mysqli 语句。请注意,mysqli 与 PDO 不同, 支持命名参数。相反,只需使用 ? 作为占位符,稍后将实际值绑定到该占位符。

【讨论】:

    猜你喜欢
    • 2018-02-07
    • 1970-01-01
    • 2020-03-26
    • 2015-03-08
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-09-04
    • 2015-06-17
    相关资源
    最近更新 更多