PHP JSON 编码无法正常工作


php json encode not working properly

我很难看出我的代码出了什么问题。 IM 使用 JSON 编码将 PHP 值传递给 JavaScript。

这是JavaScript代码下面的代码有效

<script type="text/javascript">
    function functiondecline() { 
        var signatoryidglobal = <?php echo json_encode($_SESSION['signatoryid']); ?>
        alert(signatoryidglobal);
    }
</script>

但是如果我读取另一个会话的值,它将不起作用。 为什么? 甚至警报也不会弹出。 我什至使用此代码检查了会话是否有值

echo $_SESSION['Login_id'];

它有价值。

我什至将JavaScript代码放在按钮上,但它不起作用

<script type="text/javascript">
    function functiondecline() { 
        var signatoryidglobal = <?php echo json_encode($_SESSION['signatoryid']); ?>
        var login_id = <?php echo json_encode($_SESSION['signatoryid']); ?>
        alert(signatoryidglobal);
        alert(login_id);
    }
</script>

对不起,我的英语不好。

尝试在 json_encode 函数周围添加引号,而不是整个 php 块:

var signatoryidglobal = <?= "'".json_encode($_SESSION['signatoryid'])."';"; ?>

变量格式无效!正确的是:

var test = 'string';

这:

var signatoryidglobal = <?php echo json_encode($_SESSION['signatoryid']); ?>
var login_id = <?php echo json_encode($_SESSION['signatoryid']); ?>

更改:

var signatoryidglobal = '<?php echo json_encode($_SESSION["signatoryid"]); ?>';
var login_id = '<?php echo json_encode($_SESSION["signatoryid"]); ?>';