我正在尝试在PHP中创建一个简单的预订表单。但每次我点击菜单中的页面时,它都会在数据库中插入空字段。我似乎无法找到问题。
PHP代码:
if ($_POST['submit'])
{
$navn = $_POST['navn'];
$email = $_POST['email'];
$mobil = $_POST['mobil'];
$antal = $_POST['antal'];
$dato = $_POST['dato'];
$tidspunkt = $_POST['tidspunkt'];
$besked = $_POST['besked'];
}
$db = new mysqli('localhost', 'root', 'root', 'emil');
$sql = "INSERT INTO reserver VALUES ( '', '$navn', '$email', '$mobil', '$antal', '$dato', '$tidspunkt', '$besked' )";
$db->query($sql);
?>
HTML CODE:
<input class="half" type="text" name="navn" placeholder="Indtast dit navn...">
<input class="half" type="text" name="email" placeholder="Indtast din e-mail...">
<input class="half" type="text" name="mobil" placeholder="Indtast din mobilnummer...">
<input class="half" type="text" name="antal" placeholder="Indtast antal personer...">
<select name="dato">
<option value="vaelg">Vælg dato</option>
</select>
<select name="tidspunkt">
<option value="volvo">Vælg tidspunkt</option>
</select>
<textarea name="besked" placeholder="Indtast din besked..."></textarea>
<input type="submit" name="submit" value="Send besked">
</form>
答案 0 :(得分:1)
由于您的插入查询超出了if条件,因此每当您刷新页面时,都会执行查询。因此,如果条件和放在里面查看isset()
<?php
if (isset($_POST['submit']))
{
$navn = $_POST['navn'];
$email = $_POST['email'];
$mobil = $_POST['mobil'];
$antal = $_POST['antal'];
$dato = $_POST['dato'];
$tidspunkt = $_POST['tidspunkt'];
$besked = $_POST['besked'];
$db = new mysqli('localhost', 'root', 'root', 'emil');
$sql = "INSERT INTO reserver VALUES ( '', '$navn', '$email', '$mobil', '$antal', '$dato', '$tidspunkt', '$besked' )";
$db->query($sql);
} // complete your if here
?>