如果启用了javascript,请尝试测试用户数量。我认为这个技巧会起作用,但忘了php执行任何一种方式。
<script>
<?php
$sql_insert = "INSERT IGNORE into `test_javascript` (`javascript`,`dateTime`) VALUES ('1',now())";
mysql_query($sql_insert,$link) or die("Insertion Failed:" . mysql_error());
?>
</script>
<noscript>
<?php
$sql_insert = "INSERT IGNORE into `test_javascript` (`javascript`,`dateTime`) VALUES ('0',now())";
mysql_query($sql_insert,$link) or die("Insertion Failed:" . mysql_error());
?>
</noscript>
有关如何修复此脚本或其他方法以查找启用了javascript的用户百分比的任何想法。
我们60%的用户使用IE,其中一些(我们知道)没有启用javascript,所以我想更好地了解没有javascript的用户数量。
答案 0 :(得分:6)
您可以使用AJAX,获取javascript来调用单独的页面,该页面将使用PHP处理您的数据库查询
答案 1 :(得分:3)
加载页面时,可以在PHP中将条目插入数据库。这将为您提供页面请求的总数。
在Javascript中,您可以使用AJAX发起另一个请求。这将发布到PHP脚本,但需要Javascript才能正常工作。此查询将告诉您具有Javascript支持的浏览器的请求数。
如果您记录时间戳和IP地址(或任何其他状态变量),您应该能够关联两个插入之间的条目。
或者,另一种方法是让AJAX调用更新PHP查询插入的行。在我看来,这将是一种更清洁的方法。
答案 2 :(得分:3)
你可以像其他人建议的那样做ajax,或者你可以只记录每个人和插入添加类似
的脚本document.write('<img src="/javascript-enabled-tracking" width="0" height="0"/>');
指向你的PHP脚本,它会计算启用javascript的人员。
此外,您可能可以将图像放入noscript
部分,在这种情况下,您不需要javascript,它将跟踪非js启用的灵魂。
答案 3 :(得分:2)
记录所有人以计算访问您网站的人数(无脚本或noscript标签),然后使用AJAX调用记录启用javascript的人员。
答案 4 :(得分:1)
两个PHP块都将在客户端执行服务器端代码时运行,因此script
/ noscript
无关紧要。
您可以做的是在首页加载时通过PHP编写cookie,然后使用JS设置另一个cookie。在下一页加载时,您可以检查是否已设置两个cookie,如果只设置了PHP,那么您可以假设JS已被禁用。当然,如果用户禁用了cookie,那么你就不会知道了!
或者,您可以使用script
/ noscript
加载跟踪像素图片。
<script>
trackingPixel = new Image();
trackingPixel.src = '/tracking.php?yesjs';
</script>
<noscript>
<img src="/tracking.php?nojs" alt="">
</noscript>
然后让您的tracking.php文件根据需要记录信息,并禁用未来请求中的检查。确保在脚本末尾返回适当的内容(MIME类型,内容等)。
答案 5 :(得分:0)
您可以使用js和AJAX来调用包含插入代码的PHP页面。因此,只有在此人启用了javascript的情况下才会进行通话。
您可能希望确保在AJAX POST中将某些内容传递到此PHP页面,以便任何可能碰巧登陆此页面的人(如机器人或其他东西)都不会触发向数据库提交
答案 6 :(得分:0)
为访问服务器的每个用户生成唯一ID(例如,SessionID)。 注入(如果没有全部计算)javascript使用此ID向您的计数器发送ajax请求。
答案 7 :(得分:0)
最简单的解决方案可能是将此注入您的网页:
<script>document.cookie = "javascript=1";</script>
然后检查$_COOKIE["javascript"]
。但当然这仅适用于第二页/请求。 (更精细的探测方法因此使用重定向到检测页面,如果还没有cookie存在的话。)
答案 8 :(得分:0)
以下是策略大纲:
答案 9 :(得分:0)
您应该能够为页面请求分配ID,将其作为HTML请求记录到数据库中,然后添加类似
的内容 <script type="text/javascript" src="/tracker.php?id=<?php echo $ID; ?>"></script>
然后将JS请求记录到数据库。禁用JavaScript的用户不会请求该文件。