如何将session['user_id']
传递给javascript
?我试过体内的var user_id = "<?php echo session['user_id']; ?>";
,但它没有从php接收。
<?php session_start();
if(isset($_SESSION['user_id'])){
//user logged in = true;
$user_id = $_SESSION['user_id'];
?>
<body>logged in content</body>
//I put my js here
<?php
}else{
header('Location: fblogin.php');
//echo "not logged in";
}
?>
这是我使用的jQuery(在一个两部分的测试中)。然而,正如评论中所述,如果你还没有这样做,请确保你的JS被<script>...</script>
包装。
第一部分(从表单输入设置会话名称)
<?php
ob_start();
session_start();
if(isset($_POST['submit'])){
$_SESSION['myusername'] = $_POST['myusername'];
$_SESSION['mypassword'] = $_POST['mypassword'];
echo $_SESSION['myusername'];
echo "<br>";
echo $_SESSION['mypassword'];
} // isset submit
ob_end_flush();
?>
<form action="" method="post">
Username:
<input type="text" name="myusername">
<br>
Password:
<input type="text" name="mypassword">
<br>
<input type="submit" name="submit" value="Submit">
</form>
<br><br>
<a href="sessions_test.php">check session name</a>
第2部分(查看会话名称,如果设置)(sessions_test.php
),它将在查看HTML源时显示会话名称。
<?php
session_start();
if (isset( $_SESSION['myusername']) && isset( $_SESSION['mypassword']) ){
$myusername = $_SESSION['myusername'];
$mypassword = $_SESSION['mypassword'];
echo $myusername;
echo "<br>";
echo $mypassword;
}
?>
<script src="http://code.jquery.com/jquery-1.9.1.js"></script>
<script>
$(document).ready(function(){
var player = "<?php echo $_SESSION['myusername']; ?>";
// alert (player);
});
</script>
在js中添加如下代码:
<script>
var user_id="<?php echo $user_id; ?>";
</script>