我在使用会话调用存储在mySQL数据库中的数据时遇到了问题。这是我的代码:PHP - 回顾使用会话存储在数据库中的信息
登录页面很简单,输入你的用户名和密码种类(我知道密码仍然是明文,我打算稍后改变它)。
<?php
$host="localhost";
$user="root";
$pass="";
$db_name="proyek";
$tbl_name="murid";
mysql_connect("$host", "$user", "$pass")or die("Cannot connect to SQL.");
mysql_select_db('$db_name');
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title></title>
</head>
<body>
<div id="header">
LOGO
<h1 align="center">TITLE</h1>
</div>
<br/>
<div id="login">
<form id="loginform" name="loginform" method="post" action="checklogin.php">
<table border="0" align="center">
<tr>
<td>NIS</td>
<td></td>
<td><input type="text" name="nislogin" id="nislogin"/></td>
</tr>
<tr>
<td>Password</td>
<td></td>
<td><input type="password" name="pwdlogin" id="pwdlogin"/></td>
</tr>
<tr>
<td colspan="3" align="center"><input type="submit" name="loginbutton" id="loginbutton" value="Login"/></td>
</tr>
</table>
</form>
</div>
</body>
</html>
,这是为登录确认页的代码:我已经进入数据库,用于测试目的的一些虚拟数据
<?php
session_start();
$host="localhost";
$user="root";
$pass="";
$db_name="proyek";
$tbl_name="murid";
mysql_connect("$host", "$user", "$pass")or die("Cannot connect to SQL.");
mysql_select_db('$db_name');
$nis=($_POST['nislogin']);
$pwd=($_POST['pwdlogin']);
$sql="SELECT * FROM murid WHERE nis='$nis' and password='$pwd'";
$result=mysql_query($sql);
$count=mysql_num_rows($result);
if($count==1)
{
$_SESSION['nislogin']=$nis;
$nama=$result['nama'];
$_SESSION['nama']=$nama;
header("location:index.php");
return true;
exit;
}
else
{
echo("Wrong NIS or password.");
return false;
}
?>
; ID,密码,名称。我怎样才能从数据库中回忆一些东西,而用户只能使用用户名/ ID登录?
我想在下一页显示'hello,name'之类的内容。帮助表示赞赏。
编辑:我编辑了基于反馈的代码,它产生空白;像'你好',没有名字。
如果你想显示的名称,你最好把它添加到会话,以及这样就可以不必在未来再次查询数据库访问页。 – jeroen 2014-10-28 01:41:23
like $ _SESSION ['name'] = $ result ['name']?往上看。 – 2014-10-28 01:43:30
是的,如果'name'当然是你的表中的一列。 – jeroen 2014-10-28 01:44:00