首页 > 解决方案 > 表单未更新到 db、PHP。有点困惑为什么

问题描述

我有一个关于讨论室服务的小型大学项目。我一直在更新房间的数据库。我已经使用了mysqli_error()函数,并且没有返回任何错误,我想知道为什么。这是我的表单代码:

<?php
//Tahap 1. Buat koneksi Database
$host = "localhost";
$user = "root";
$pass = "";
$name = "pinjamruang";
$koneksi = mysqli_connect($host, $user, $pass, $name);

//Periksa apakah koneksi berhasil
if(mysqli_connect_errno()){
    echo "Error: ";
    echo mysqli_connect_error();
    echo "<br   /> Error Code: ";
    echo mysqli_connect_errno();
    die();
}
$sql = "SELECT * FROM ruangan";
$keranjang = mysqli_query($koneksi, $sql);
$row = mysqli_fetch_assoc($keranjang);
?>

<h1 class="page-header">Edit Karyawan</h1><br>

<form class="form-horizontal" action="process/process-ruangan-edit.php" method="post" enctype="multipart/form-data">
    <div class="form-group">        
        <label for="inputKodeRuangan" class="col-sm-2 control-label">Kode Ruangan</label>
        <div class="col-sm-10">
            <input type="text" name="kode" class="form-control" id="inputKodeRuangan" value="<?php echo $row['kode'];?>" placeholder="Kode Ruangan">
        </div>
        </div>
        <div class="form-group">
        <label for="inputJumlahMeja" class="col-sm-2 control-label">Jumlah Meja</label>
        <div class="col-sm-10">
            <input type="number" name="meja" class="form-control" id="inputJumlahMeja" value="<?php echo $row['meja'];?>"placeholder="Jumlah Meja">
        </div>
        </div>
        <div class="form-group">
        <label for="inputJumlahKursi" class="col-sm-2 control-label">Jumlah Kursi</label>
        <div class="col-sm-10">
            <input type="number" name="kursi" class="form-control" id="inputJumlahKursi" value="<?php echo $row['kursi'];?>"placeholder="Jumlah Kursi">
        </div>
        </div>
        <div class="form-group">
            <label for="inputStatus" class="col-sm-2 control-label">Status</label>
            <div class="col-sm-10">
                <select name="status" class="form-control" id="inputStatus">
                    <option value="available">Tersedia</option>
                    <option value="unavailable">Tidak Tersedia</option>
                </select>
            </div>
        </div>
        <div class="form-group">
        <label for="inputNote" class="col-sm-2 control-label">Catatan Khusus</label>
        <div class="col-sm-10">
            <input type="text" name="note" class="form-control" id="inputNote" value="<?php echo $row['note'];?>"placeholder="Catatan Khusus">
        </div>
        </div>      
    <div class="form-group">
        <div class="col-sm-offset-2 col-sm-10">
            <input type="hidden" name="id" value="<?php echo $row2['id']; ?>" />
            <button type="submit" class="btn btn-primary">Update</button>
        </div>
    </div>
</form>

这是我的流程代码:

<?php
// Tahap 1. Buat koneksi database
$host = "localhost";
$user = "root";
$pass = "";
$name = "pinjamruang";
$koneksi = mysqli_connect($host, $user, $pass, $name);

//Periksa apakah koneksi berhasil
if(mysqli_connect_errno()){
    echo "Error: ";
    echo mysqli_connect_error();
    echo "<br   />Error Code: ";
    echo mysqli_connect_errno();
    die();
}
//Tahap 2. Lakukan Query SQL
// Dapatkan data dari form dan dibersihkan
$kode = mysqli_real_escape_string($koneksi, $_POST['kode']);
$meja = mysqli_real_escape_string($koneksi, $_POST['meja']);
$kursi = mysqli_real_escape_string($koneksi, $_POST['kursi']);
$status = mysqli_real_escape_string($koneksi, $_POST['status']);
$note = mysqli_real_escape_string($koneksi, $_POST['note']);
$sql = "UPDATE ruangan
        SET kode = '$kode',
            kursi = $kursi,
            meja = $meja,
            status = '$status',
            note = '$note'
        WHERE id = $_POST[id]";
mysqli_query($koneksi,$sql);
echo mysqli_error($koneksi);
//header('Location: ../index.php?page=ruangan');
?>

任何帮助将不胜感激,我对 PHP 还是很陌生,基本上是编程,非常感谢!

标签: phpsqldatabaseforms

解决方案


在您的表单代码中,您正在引用$row2尚未定义的代码。

<input type="hidden" name="id" value="<?php echo $row2['id']; ?>" />

你应该把它改成

<input type="hidden" name="id" value="<?php echo $row['id']; ?>" />

推荐阅读