簡體   English   中英

我無法用 PHP 更新我的 MySQLi 數據庫(沒有錯誤)

[英]I can't update my MySQLi Database with PHP (no Errors)

我無法使用 PHP 更新我的數據庫。 我沒有收到任何錯誤,但它不會改變任何東西!

這是我的文件:

<?php
include_once 'dbh.inc.php';
?>


<?php
    $id = $_GET['verId'];
    $name = $_GET['verName'];
    echo $id;
    echo $name;
    $sql  = "UPDATE allusers SET ver = '1' WHERE idUsers = '$id';";
?>

變量已定義並起作用。 這是dbh.inc.php文件:

<?php

$servername = "localhost";
$dBUsername = "root";
$dBPassword = "";
$dBName = "loginsystem";

$conn = mysqli_connect($servername, $dBUsername, $dBPassword, $dBName);

if (!$conn) {

    die("Connection failed: ".msqli_connect_error());

}
?>

其他使用dbh.inc.php文件工作正常。 謝謝你的幫助。

您需要執行您的 SQL,但是您使用 MySQLi 的方式是非常錯誤的。 讓我向您展示如何開始使用一個簡單的查詢。

首先在你的dbh.inc.php (你也應該正確命名)你應該有以下代碼:

<?php

mysqli_report(MYSQLI_REPORT_ERROR | MYSQLI_REPORT_STRICT);
$conn = new \mysqli("localhost", "root", "", "loginsystem");
$conn->set_charset('utf8mb4');

不要使用 root 進行連接。 使用正確的密碼創建一個有效的 MySQL 用戶。

然后在您的主要 PHP 文件中,您可以按如下方式使用它:

<?php

include_once 'dbh.inc.php';

$id = $_GET['verId'];
$name = $_GET['verName'];
echo $id;
echo $name;

// prepare -> bind data -> execute
$stmt = $conn->prepare("UPDATE allusers SET ver='1' WHERE idUsers=?");
$stmt->bind_param('s', $id);
$stmt->execute();

我在這里使用了所謂的准備語句。 您可以在此處了解有關 MySQLi 的更多信息: https ://phpdelusions.net/mysqli_examples/update

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM