什么MySQLi数据类型应该用于<option> </option>的值

时间:2014-01-29 04:02:47

标签: php mysql sql mysqli

我正在尝试使用 选择 框将值插入MySQLi行,如下所示。

<select name="post_game"><option value="minecraft">Minecraft</option></select>

但我遇到了错误:

Undefined index: post_game

这是因为我应该使用不同的数据类型来反对使用Varchar吗?我也使用&lt;值将值插入到其他MySQLi行中输入&gt;而不是&lt;选择&gt;,它们看起来很好,这就是为什么我认为它可能与数据类型有关,而不是我的代码。

但无论如何,这是我的代码:

<select name="post_game"><option value="minecraft">Minecraft</option></select>   

$game=$_POST['post_game'];
$query = mysqli_query($con,"INSERT INTO servers (game) VALUES ('$game')");

1 个答案:

答案 0 :(得分:0)

Varchar会正常工作。如果那是您发布的整个代码,那么由于没有发布请求,因此无法正常运行,为了做到这一点,您需要一个表单元素

<form method="post">
    <select name="post_game">
        <option value="minecraft">Minecraft</option>
    </select>
    <input type="submit" name="submit" value="submit" />
</form>
<?php
if (isset($_POST["submit"]) && isset($_POST["post_game"]))
{
    $game = mysqli_real_escape_string($con,$_POST["post_game"]);
    $query = mysqli_query($con,"INSERT INTO servers (game) VALUES ('$game')");
}
?>

还要考虑安全性。捆绑你的参数,我在我的手机上,所以我进入那个。这应该足以让你通过