我用 jQuery mobile 和 php 制作了一个登录脚本。 php 文件设置创建一个 session 并设置 $_SESSION['myusername']。我可以从login.html页面的 session 变量中检索用户名吗,还是必须执行“var myusername = data.username;”在登录页面上,然后以某种方式将此变量传递到login.html页面。
<?php
header('Access-Control-Allow-Origin: *');
header('Content-type: application/json');
$host="localhost"; // Host name
$dbusername="root"; // Mysql username
$password=""; // Mysql password
$db_name="testDB"; // Database name
// Connect to server and select databse.
mysql_connect("$host", "$dbusername", "$password")or die("cannot connect");
mysql_select_db("$db_name")or die("cannot select DB");
// username and password sent from form
$myusername=$_POST['username'];
$mypassword=$_POST['password'];
$sql="SELECT * FROM members WHERE username='$myusername' and password='$mypassword'";
$result=mysql_query($sql);
// Mysql_num_row is counting table row
$count=mysql_num_rows($result);
// If result matched $myusername and $mypassword, table row must be 1 row
if($count==1){
while($row = mysql_fetch_array($sql)){
// Register $myusername, $mypassword and redirect to file "login_success.php"
session_register("session_username");
session_register("session_password");
$id = $row["id"];
session_register('id');
$_SESSION['id'] = $id;
session_register('username');
$_SESSION['username'] = $myusername;
mysql_query("UPDATE members SET last_log_date=now() WHERE id='$id' LIMIT 1");
}
$json = array('boolean' => true, 'jsonUser' => $_SESSION['username']);
echo json_encode($json);
}
else {
echo "Wrong Username or Password";
}
?>
编辑:
var user="<?php echo $myusername; ?>";
$(document).ready(function(e) {
$('#usernamediv').html(user);
});
最佳答案
你可以这样:
<script language="javascript">
var username="<?php echo $_SESSION['username']; ?>";
</script>
没有理由不能将 echo PHP 变量放入 Javascript 中!
关于php - 如何在 jQuery 的页面之间保留从 PHP 登录检索到的数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11679602/