У меня возникла проблема при использовании сеансов для восстановления данных, хранящихся в базе данных 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
как $ _SESSION ['name'] = $ result ['name']? см. выше. –
Да, если 'name' - это столбец в вашей таблице, конечно. – jeroen