php - PHP 从 POST 中的表单中获取一个值,该表单具有来自 PHP 脚本的值
问题描述
我创建了一些 PHP 代码来从数据库中获取值,并将它们显示为我使用 HTML 创建的表单中的一个选项。现在我希望能够选择其中一个选项,然后在 POST 中进行处理。但是当我尝试在 POST 中获取该值时,它给了我一个错误,即我的索引未定义。所以我想我的问题是,获得这个值可能吗?如果是这样,我将如何做到这一点?
这是我的代码:
<form method="post" action="dayzconfigedit.php">
<select name="item1">;
<?php
//Display the Items from the database in a dropdown menu
$sql = "SELECT item_id FROM `all_items`";
$result = $conn->query($sql);
for($x = 0; $x < $result->num_rows; $x++) {
$row = $result->fetch_assoc();
echo "<option value=\"{$row["item_id"]}\">{$row["item_id"]}</option>";
}
?>
</select>
</form>
然后我尝试在 POST 中获取价值:
if ( $_SERVER['REQUEST_METHOD'] == 'POST' ) {
//Grab Selected Items from Form
$item1 = "$_POST[item1]";
}
提前致谢!
我浏览了应该回答我的问题的帖子,但我仍然无法解决这个问题,因为我不知道为什么 POST 数组中未定义索引。
解决方案
你需要像这样抓住项目1;
if ( $_SERVER['REQUEST_METHOD'] == 'POST' ) {
//Grab Selected Items from Form
$item1 = ! empty($_POST['item1']) ? $_POST['item1'] : null;
}
另外,请更新您选择的选项;
echo"<option value=\"{$row["item_id"]}\">{$row["item_id"]}</option>";