【发布时间】:2016-11-20 14:32:44
【问题描述】:
我目前正在编写一个脚本来捕获按下打印屏幕的用户,完成后它将提交以下信息:
成员 ID、姓名、IP、日期、网址
我还希望它上传他们筛选的内容并将其上传到 imgur,并在数据库中也有指向该链接的链接。
我目前正在编写脚本,这就是我目前所拥有的。
谁能帮我完成这个或指出我正确的方向:)
<script>
var afterPrint = function() {
// Get member ID
$ips_username = $this->request['ips_username'];
$this->DB->build(array(
'select' => 'member_id',
'from' => 'members',
'where' => 'name = "' . $ips_username . '"'
));
$this->DB->execute();
$row = $this->DB->fetch();
$member_id = $row['member_id'];
// Get IP
$ip = '';
if (getenv('HTTP_CLIENT_IP'))
// $ip = getenv('HTTP_CLIENT_IP');
//else if(getenv('HTTP_X_FORWARDED_FOR'))
$ip = getenv('HTTP_CF_CONNECTING_IP');
else if(getenv('HTTP_CF_CONNECTING_IP'))
$ip = getenv('HTTP_CF_CONNECTING_IP');
else if(getenv('HTTP_X_FORWARDED'))
$ip = getenv('HTTP_X_FORWARDED');
else if(getenv('HTTP_FORWARDED_FOR'))
$ip = getenv('HTTP_FORWARDED_FOR');
else if(getenv('HTTP_FORWARDED'))
$ip = getenv('HTTP_FORWARDED');
else if(getenv('REMOTE_ADDR'))
$ip = getenv('REMOTE_ADDR');
else
$ip = 'UNKNOWN';
// Connect to logs database
$conn = mysqli_connect("localhost","","","");
if (mysqli_num_rows($result) == 0) {
// New IP for member ID, insert new row
// Get current forum display name
$this->DB->build(array(
'select' => 'members_display_name',
'from' => 'members',
'where' => 'member_id = ' . $member_id . ''
));
$this->DB->execute();
$row = $this->DB->fetch();
$current_name = $row['members_display_name'];
mysqli_query($conn, 'insert into screenshot_logs(MEMBER_ID,NAME,IP,DATE,URL)
values(
' . $member_id . ',
"' . $current_name . '",
"' . $ip . '",
NOW(),
);');
}
//End screenshot tracking
};
【问题讨论】:
-
你在javascipt里面写过php代码吗?
-
如果有人能帮我弄清楚为什么这不起作用,我将不胜感激:)
-
我对语法感到困惑。这是 PHP 吗?你从一个
<script>标签和一个var关键字开始声明一个暗示Javascript的变量,但其余的代码似乎是PHP -
您需要更具体地了解您正在努力解决的问题。我们无法帮助您完成您的代码,但我们可以帮助您了解为什么特定的事情可能会或可能不会工作。
-
基本上我要做的是捕获用户打印屏幕何时可以提交他们正在访问的当前 URL、他们在 IPB 论坛上的成员 ID、他们的 IP 和他们这样做的日期。
标签: javascript java php html mysql