Php 如何结束/终止在不影响其他函数的情况下检查表内IP地址的函数
根据标题,我如何才能完成它?检查已存储在db中的IP地址的函数之一应该在不影响其他函数的情况下终止特定的检查函数。我以前使用exit()和die(),但它会停止所有函数 main.php:Php 如何结束/终止在不影响其他函数的情况下检查表内IP地址的函数,php,Php,根据标题,我如何才能完成它?检查已存储在db中的IP地址的函数之一应该在不影响其他函数的情况下终止特定的检查函数。我以前使用exit()和die(),但它会停止所有函数 main.php: function CheckIfUserIpExist() { $connection = DBconnect(); $user_ip = $_SERVER["REMOTE_ADDR"]; $sql = "SELECT * FROM views WHERE user_ip = ?";
function CheckIfUserIpExist() {
$connection = DBconnect();
$user_ip = $_SERVER["REMOTE_ADDR"];
$sql = "SELECT * FROM views WHERE user_ip = ?";
$stmt = $connection->prepare($sql);
$stmt->bind_param("s", $user_ip);
$stmt->execute();
$stmt->store_result();
$users_ip = $stmt->num_rows;
if($users_ip > 0) {
die();
}
}
function AddUserWhenPageIsViewed() {
$connection = DBconnect();
$user_ip = $_SERVER["REMOTE_ADDR"];
$time_ = date('Y-m-d G:i:s');
$sql = "INSERT INTO views (user_ip, time_) VALUES (?,?)";
$stmt = $connection->prepare($sql);
$stmt->bind_param("ss", $user_ip, $time_);
$stmt->execute();
}
Index.php
CheckIfUserIpExist();
AddUserWhenPageIsViewed();
问候。您需要的是退货
function CheckIfUserIpExist() {
$connection = DBconnect();
$user_ip = $_SERVER["REMOTE_ADDR"];
$sql = "SELECT * FROM views WHERE user_ip = ?";
$stmt = $connection->prepare($sql);
$stmt->bind_param("s", $user_ip);
$stmt->execute();
$stmt->store_result();
$users_ip = $stmt->num_rows;
if($users_ip > 0) {
return;
}
}
function AddUserWhenPageIsViewed() {
$connection = DBconnect();
$user_ip = $_SERVER["REMOTE_ADDR"];
$time_ = date('Y-m-d G:i:s');
$sql = "INSERT INTO views (user_ip, time_) VALUES (?,?)";
$stmt = $connection->prepare($sql);
$stmt->bind_param("ss", $user_ip, $time_);
$stmt->execute();
}
最好从Check函数返回一个状态
function CheckIfUserIpExist() {
$connection = DBconnect();
$user_ip = $_SERVER["REMOTE_ADDR"];
$sql = "SELECT * FROM views WHERE user_ip = ?";
$stmt = $connection->prepare($sql);
$stmt->bind_param("s", $user_ip);
$stmt->execute();
$stmt->store_result();
$users_ip = $stmt->num_rows;
if($users_ip > 0) {
return false;
}
return true;
}
function AddUserWhenPageIsViewed() {
$connection = DBconnect();
$user_ip = $_SERVER["REMOTE_ADDR"];
$time_ = date('Y-m-d G:i:s');
$sql = "INSERT INTO views (user_ip, time_) VALUES (?,?)";
$stmt = $connection->prepare($sql);
$stmt->bind_param("ss", $user_ip, $time_);
$stmt->execute();
}
然后,当您调用测试函数时,您知道接下来要做什么。如果为true,则用户存在,因此不要调用Add函数;如果为false,则用户不存在,因此创建一个
if ( ! CheckIfUserIpExist() ) {
AddUserWhenPageIsViewed();
}
使用return语句在第一个函数中,使用return($users\u ip>0)。如果(CheckIfUserIpExist()==false){ddUserWhenPageisView();}那么如果已经存在,则不会插入ip这正是我要搜索的,谢谢!)我感谢所有的建议和答案!哈哈,是的,我忘了那个功能,我很抱歉,我很抱歉。