无法将php会话变量传递给javascript字符串变量
虽然 $ _ SESSION [' Id']变量存在,但javascript似乎无法使用此语法:
CODE
<?php session_start(); ?>
<script>
var a = "<?php echo $_SESSION['Id']; ?>";
alert(a);
</script>
答案 0 :(得分:2)
你的语法看起来很好。如果你写这个怎么办?
<?php
php session_start();
echo '<div style="padding:30px; background-color:#ffffff;"><pre>'.print_r($_SESSION, true).'</pre></div>';
?>
<script>
var a = "<?php echo $_SESSION['Id']; ?>";
alert(a);
</script>
如果不起作用,请尝试在echo
之前手动设置ID<?php
php session_start();
$_SESSION['Id'] = 'AN ID!!!';
echo '<div style="padding:30px; background-color:#ffffff;"><pre>'.print_r($_SESSION, true).'</pre></div>';
?>
答案 1 :(得分:1)
首先,与评论中提到的一样,请确保您使用的是正确的ID案例,无论是id
还是Id
。
其次,尝试使用json_encode
将其转换为javascript使用。无需""
:
var a = <?php echo json_encode($_SESSION['Id']); ?>;
答案 2 :(得分:1)
尝试此操作以查看变量$ _SESSION ['Id']是否存在且设置为
<?php
session_start();
print_r( $_SESSION );
?>
<script type="text/javascript">
var a = "<?php echo $_SESSION['Id']; ?>";
alert(a);
</script>