我创建了一个可以将用户注册到数据库中的代码。但我也想保存IP。 有人可以帮我解决我的问题吗?因为我从未使用IP创建代码,所以我已尝试搜索但没有。
$podeCriarConta = True;
if(!filter_var($_POST['email'], FILTER_VALIDATE_EMAIL))
{
$_SESSION['error'] = "<img src='images/picons/error.png'></img> E-mail inválido! Por favor introduza um válido.<br />";
$podeCriarConta = False;
}
if(empty($_POST['password']))
{
$_SESSION['error'] = "<img src='images/picons/error.png'></img> Password inválida! Por favor introduza uma válida.<br />";
$podeCriarConta = False;
}
if(empty($_POST['username']))
{
$_SESSION['error'] = "<img src='images/picons/error.png'></img> Utilizador inválido! Por favor introduza um Utilizador válido.<br />";
$podeCriarConta = False;
}
if(empty($_POST['nome']))
{
$_SESSION['error'] = "<img src='images/picons/error.png'></img> Nome inválido! Por favor introduza um Nome válido.<br />";
$podeCriarConta = False;
}
$query = "
SELECT
1
FROM users
WHERE
username = :username
";
$query_params = array(
':username' => $_POST['username']
);
try
{
$stmt = $db->prepare($query);
$result = $stmt->execute($query_params);
}
catch(PDOException $ex)
{
die("Failed to run query line 68: " . $ex->getMessage());
}
$row = $stmt->fetch();
if($row)
{
$_SESSION['error'] = "<img src='images/picons/error.png'></img> Nome de Utilizador já se encontra em uso!<br />";
}
$query = "
SELECT
1
FROM users
WHERE
email = :email
";
$query_params = array(
':email' => $_POST['email']
);
try
{
$stmt = $db->prepare($query);
$result = $stmt->execute($query_params);
}
catch(PDOException $ex)
{
$_SESSION['error'] .= "Failed to run query line 103: " . $ex->getMessage();
}
$row = $stmt->fetch();
if($row)
{
$_SESSION['error'] .= "<img src='images/picons/error.png'></img> E-mail inválido! Já se encontra em uso.<br />";
}
$query = "
INSERT INTO users (
nome,
username,
password,
";
答案 0 :(得分:2)
您的问题没有显示您的正确要求,但可能是您正在搜索:
$Ip = $_SERVER['REMOTE_ADDR']; //this will gives you IP address from which the user is viewing the current page.
然后只需保存这个&#34; $&#34;到您的数据库。