[英]PHP variable is empty when called in jQuery script
我在将PHP变量调用到jQuery脚本时遇到了一些麻烦。 基本上,我运行一些函数来确定用户是否已登录,如果已登录,则将其存储为$ loggedin = 1。 如果页面上的人未登录,则单击按钮时,我希望提示他们登录(显然,我将确保用户在任何数据处理之前都已经在服务器端正确登录) 。 我四处搜索,发现将信息传递到jQuery的最简单方法是将脚本创建为PHP文件,以便可以将其回显到脚本中。 这是我正在使用的高级代码:
调用脚本:
<?php
$loggedIn = 1;
<script src="../buttonScript.php"></script>
?>
脚本:
<?php header("Content-type: application/javascript"); ?>
var buttonScript = function(){
var loggedIn = <?php if($loggedIn===1){echo "1";}else{echo "0";} ?>;
$("#button").click(function(){
alert(loggedIn);
});
};
$(document).ready(buttonScript);
在$ loggedIn等于1的情况下单击按钮时,警报给我0。实际上,如果我只是在脚本本身中回显$ loggedIn,则该值将完全为空,并且脚本错误并不会弹出一个警报。 我相信PHP变量$ loggedIn实际上具有一个变量,因为如果在调用脚本之前立即回显该变量,那么我会成功看到数字1。
注意:在脚本中添加了几行,只是为了清楚起见。
尝试这个
<?php
$loggedIn = 1;
require("/path/buttonScript.php");
?>
buttonScript.php
<script type="text/javascript">
var buttonScript = function(){
var loggedIn = <?php echo $loggedIn; ?>;
$("#button").click(function(){
alert(loggedIn);
});
};
$(document).ready(buttonScript);
</script>
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.