有没有办法让php程序得知用户浏览器是否成功运行js?


php和js这两个家伙总是八杆子打不到一起,一个在服务器端,一个在前台。
为安全起见,有些“操作”在用户前台的js没有执行的情况下是不应该继续运行的。
<noscript> 只可以改变外观样式而已,没有什么作用,况且还可以在前台被改回来。
所以, 有没有办法让php程序得知用户浏览器是否成功运行js?

php HTML html5 JavaScript

44397 9 years, 6 months ago

加一个隐藏的 iframe,打开一个侦测页面,这个页面加个 meta,在一定时间(比如5秒)后 refresh 到通知页面。然后紧接着一段脚本让当前页面跳转到其它页面去。如果浏览器允许执行 js,就会跳转到第2 个页面,不会发出通知。


 <head>
    <meta http-equiv="refresh" content="5; url=/notify.php"/>
    <script>
        window.location.href="/has-scripts.php";
    </script>
</head>

老衲咬杀你 answered 9 years, 6 months ago

js发起一个异步请求到服务端?

kunge哈? answered 9 years, 6 months ago

发一个异步请求到后端即可

猫D気まぐれ answered 9 years, 6 months ago

Your Answer