我在一個簡單的 PHP MySQL 項目中遇到問題。當(dāng)我嘗試從選擇選項中獲取記錄時,它只提供 ID。我也希望傳遞來自選擇的值。<form class="form-style-9" method="POST" action="function.php?type=updatedistrict">`` <ul> <li>ID: <input type="hidden" name="dist_id" class="field-style field-full align-none" value="<?php echo $ids;?>" readonly /> </li> <li>District Name: <input type="text" name="name" class="field-style field-full align-none" value="<?php echo $names;?>" /> </li> <li>Postal Code: <input type="text" name="code" class="field-style field-full align-none" value="<?php echo $codes;?>"/> </li> <li>Province <select name="province_id" class="form-control"> <option value="">Select Province</option> <?php $sql = mysqli_query($conn, "SELECT id, province From province"); $row = mysqli_num_rows($sql); while ($row = mysqli_fetch_array($sql)){ echo "<option value='". $row['id'] ."'>" .$row['province'] ."</option>" ; } ?> </select> <li> <input type="submit" value="Update" name="submit" /> </li> </ul> </form>這是更新功能代碼:case 'updateprovince':if (isset($_POST['submit'])) { $id = $_POST['dist_id']; $prov_id= $_POST['province_id']; $query=$conn->query("UPDATE province SET province='$prov_id' where id='$id'"); if ($query) { echo '<script> window.location.replace("province.php"); </script>'; } else { echo "issue"; } }break;
1 回答

GCT1015
TA貢獻1827條經(jīng)驗 獲得超4個贊
您可以通過以下方式發(fā)布您的省份名稱而不是 ID:
echo "<option value='". $row['province'] ."'>" .$row['province'] ."</option>" ;
然后,您的$_POST['province_id']將包含省份值而不是當(dāng)前 ID。
通過您的選項傳遞 id 和值(如果您需要保留 id 進行某些額外處理)的方法如下:
echo "<option value='". $row['id'] . '|'. $row['province'] ."'>" .$row['province'] ."</option>" ;
然后在提交后,您只需用“|”將兩者分開 分隔符。
if (isset($_POST['submit'])) {
$id = $_POST['dist_id'];
$province = explode('|', $_POST['province_id']);
$province_id = $province[0]
$province_name = $province[1]
- 1 回答
- 0 關(guān)注
- 182 瀏覽
添加回答
舉報
0/150
提交
取消