zec*_*ude 2 javascript php variables
我有一系列PHP语句,如果启用了javaScript,我只想运行它.
if($js_enabled == 'yes') {
//Run a series of PHP statements
}
Run Code Online (Sandbox Code Playgroud)
我的问题是我想用javaScript创建$ js_enabled变量.因此,如果启用了javaScript,则将创建该变量并运行PHP语句,但如果未启用javaScript,则永远不会创建该变量,并且不会运行PHP语句.
如何使用PHP可以识别的JavaScript创建变量?
你可以做
$browser = get_browser();
if ($browser['javascript'] == 1) {
// your code here
}
Run Code Online (Sandbox Code Playgroud)
请阅读文档以get_browser获取警告,尤其是
注意:为了使其正常工作,php.ini中的browscap配置设置必须指向系统上browscap.ini文件的正确位置.browscap.ini不与PHP捆绑在一起,但您可以在此处找到最新的»php_browscap.ini文件.虽然browscap.ini包含许多浏览器的信息,但它依赖于用户更新来保持数据库的最新状态.该文件的格式是相当不言自明的.
还要检查评论中给出的链接get_browser:
编辑正如您在评论中正确指出的那样,以上内容不会告诉您JavaScript 是否已启用,而只是浏览器是否能够运行它.从服务器端发现客户端是不可能的,因为服务器端首先运行.如果有的话,请在提供页面后通知服务器端,例如@ mck89建议或只是设置一个cookie,您可以在每个后续请求中阅读.
但一般来说,如果您的网站需要启用JavaScript,您只需添加一条消息即可告知用户此要求,例如:
<noscript>This page requires JavaScript to run properly</noscript>
Run Code Online (Sandbox Code Playgroud)
换句话说,不要从PHP检查.只需设置浏览器可能使用的每个变量,如果启用了JavaScript并考虑使用优雅降级或渐进增强.
| 归档时间: |
|
| 查看次数: |
485 次 |
| 最近记录: |