我有一个简单的PHP表单插入“模型”(在dorpdown)与价格。我想要做的事情是,你只能发布模型1一次,模型2一次,等等。因此,如果您在下拉列表中选择模型1并发布它,然后再次尝试,则它不允许您这样做,因为您已经发布了模型1。
对不起,我的英语不好
<select name="model">
<?
$modellen[1]= "Model 1";
$modellen[2]= "Model 2";
$modellen[3]= "Model 3";
foreach ($modellen as $key => $value)
{
echo "<option value='".$key."''>".$value."</option>";
}
?>
</select>
if(isset($_POST['toevoegen']))
{
$prijs = Safesql($_POST['prijs']);
$moment = date("Y-m-d h:i:sa");
$kiesmodel = Safesql($_POST['model']);
if(!$mysqli->query("INSERT INTO prijzen (prijs, created, model) VALUES (".$prijs.",'".$moment."' , '".$kiesmodel."')")) {echo $mysqli->error;}
else{ echo "het toevoegen is gelukt";}
Laden(0);
}
//show records from database
if ($query = $mysqli->query("SELECT * FROM prijzen")) { echo $mysqli->error;}
if ($query->num_rows >= 1)
{
while($row = $query->fetch_assoc())
{
?><tr><td><form action="index.php" method="post">
<? echo "Model" . " " . $row['model']; ?><a href="index.php?verwijderen=<?php echo $row['id']; ?>"><img src="delete.png"></a>
<a href="index.php?edit=<?php echo $row['id']; ?>"><img src="edit.png"></a><?
echo " prijs:" . $row['prijs']. "<br>" ."";?><?
}
}
发布于 2018-10-09 17:23:50
尝试在插入前添加验证,
if(isset($_POST['toevoegen']))
{
$prijs = Safesql($_POST['prijs']);
$moment = date("Y-m-d h:i:sa");
$kiesmodel = Safesql($_POST['model']);
// validation
$sql = "SELECT * FROM prijzen WHERE model = '$kiesmodel'";
$query = $mysqli->query($sql);
$row = $query->fetch_assoc();
if (count($row) >= 1) {
echo "<script>alert('You already add this model')</script>";
}else{
if(!$mysqli->query("INSERT INTO prijzen (prijs, created, model) VALUES (".$prijs.",'".$moment."' , '".$kiesmodel."')")) {echo $mysqli->error;}
else{ echo "het toevoegen is gelukt";}
Laden(0);
}
}
希望它能帮助你
https://stackoverflow.com/questions/52717351
复制相似问题