首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >fingerprintjs2到php变量

fingerprintjs2到php变量
EN

Stack Overflow用户
提问于 2016-03-22 02:53:55
回答 3查看 2.2K关注 0票数 0

我喜欢获取指纹作为php变量,我获取了以下内容,但不想工作。

代码语言:javascript
复制
<p>fingerprint2: <strong id="fp2"></strong></p>

<script src="/fingerprintjs2/fingerprint2.js"></script>
<script>
    var fp2 = new Fingerprint2();
    fp2.get(function(result) {
        console.log(result);
        $("#fp2").text(result);
    });
</script>

$myphpvar = "<script>document.write(fp2.get());</script>"; 

echo $myphpvar;
EN

回答 3

Stack Overflow用户

发布于 2016-03-22 03:00:11

Javascript在PHP完成后运行。客户端代码与服务器端代码。在过去,我已经通过在呈现图像的PHP文件中运行PHP来解决这个问题。这种方法通常被称为像素跟踪。

以下是基本步骤,您需要将Javascript中的变量传递给呈现图像的PHP文件:

代码语言:javascript
复制
document.write("<img src=fingerprint.php?x="+x+"&y="+y+" width=1 height=1>");

在上面的例子中,它将Javascript变量x和y传递给PHP图像。

然后,fingerprint.php脚本如下所示:

代码语言:javascript
复制
    <?php
    header("Content-type: image/png");
    session_start();

    $x = $_REQUEST['x'];
    $y = $_REQUEST['y'];

    $_SESSION['x'] = $x;
    $_SESSION['y'] = $y              

    // SHOW THE IMAGE
    $im      = imagecreatefrompng("fingerprint.png");

    imagepng($im);
    imagedestroy($im);

    ?>

png图像可以是您想要的任何内容,因为它将只是最终屏幕上的1x1图像。现在,您的PHP中已经有了Javascript变量。当代码启动会话时,您可以将变量写入会话并稍后在另一个脚本中收集它们,或者将它们写入数据库并稍后恢复。试着用我的简单示例来确保它正常工作,然后从那里扩展。

票数 0
EN

Stack Overflow用户

发布于 2016-03-22 03:02:53

这根本不是PHP的工作方式。PHP无法处理客户端JavaScript。如果您希望访问PHP中的客户端信息,那么您可能应该将其放在表单中,并将其发布到PHP中的另一个页面。有很多关于PHP forms的很好的教程,比如this one

票数 0
EN

Stack Overflow用户

发布于 2016-03-25 07:37:13

有很多方法可以将数据从JavaScript发送回服务器端

  • 设置cookie并在下一次请求中读取它通过注入脚本/ IMG / iframe标记(但不使用document.write)请求进一步的内容在url的查询中添加指纹
  • make an AJAX request
  • 向页面上的表单添加隐藏输入-要求用户使用表单

<代码>F29导航出页面

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/36139316

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档