我目前正在制作一个简单的IP禁止脚本,我正处于将IP地址插入数据库的阶段.我为此创建的HTML表单包含两个字段; IP地址和原因:
<td width="70%"><h4>Ban New IP:</h4>(Enter IP to be banned)</td>
<td width="30%">
<form method="post" action="">
IP Address: <input type="text" id="ip" name="ip" autocomplete="off" maxlength="15" /><br /><br />
Enter Reason: <input type="text" id="reason" name="reason" autocomplete="off" maxlength="255" /><br /><br />
<input type="submit" id="submit" name="submit" value="Ban IP" /><br /><br />
Run Code Online (Sandbox Code Playgroud)
我的数据库包含一个标题为banned_ips三列的表id, ip and reason.我创建的插入语句完美无缺,但是我想查看IP是否已经存在.目前它只会插入IP,即使有一个匹配它.这是我目前的查询:
<?php
if ($_POST) {
if ($_POST['ip'] != '') {
if (strlen($_POST['ip']) <= 15) {
$ip = $_POST['ip'];
$ip_clean = htmlentities($ip);
if (isset($ip_clean)) {
// SQL insert
$insert_ip = $db->prepare("INSERT INTO `banned_ips` (ip) VALUES (?)");
$insert_ip->bind_param('s', $ip_clean);
if ($insert_ip->execute()) {
// Successful insert
$_SESSION['successful_insert'] = 'Success';
}
}
}
}
}
?>
Run Code Online (Sandbox Code Playgroud)
我想要做的是在插入新IP时检查IP地址是否已经存在.我已经查看了有关stackoverflow的其他问题以及我看到的很多时间,WHERE NOT EXISTS但是我找到的没有显示任何带有预处理语句的示例.
| 归档时间: |
|
| 查看次数: |
94 次 |
| 最近记录: |