嗨大家我在插入if else语句之前发现了几个关于重复条目检查的帖子。这些都不是我的函数或我无法弄清楚如何。 所以这是我的脚本到目前为止:
<?php
$con=mysqli_connect("xxx.xx.mysql","xxx","xxx","xxx");
// Check connection
if (mysqli_connect_errno()) {
echo "Verbindung fehlgeschlagen zur MySQL DB". mysqli_connect_error();
}
// escape variables for security
$ip = mysqli_real_escape_string($con, $_SERVER['REMOTE_ADDR']);
$choice = mysqli_real_escape_string($con, $_POST['choice']);
$posturl = mysqli_real_escape_string($con, $_POST['posturl']);
//check duplicate votings for actual posturl
//...code...
//if dublicate abort ot close db connection
//...code...
//else insert in DB
$sql="INSERT INTO feedback_helpful (ip, choice, posturl)
VALUES ('$ip', '$choice', '$posturl')";
if (!mysqli_query($con,$sql)) {
die('Error: ' . mysqli_error($con));
}
echo "Danke für dein Feedback";
mysqli_close($con);
?>
那么我怎样才能在插入之前检查是否存在重复的ip for posturl,如果没有则返回重复的投票消息,如果没有则插入数据库中。 感谢
答案 0 :(得分:0)
首先,您应该创建一个您想要的唯一键不应该是重复记录,然后将记录插入表中,如果该记录已经存在则那么唯一键会生成错误,因此您应该使用带有关键字IGNORE
的查询这是验证记录是否存在然后它不会在表中插入重复的条目,它也不会产生错误。