登录后从db中为各个用户提取数据

时间:2016-10-18 04:47:36

标签: php html mysql css sql

在这里构建一个Web应用程序。身份验证php代码如下所示(请暂时忽略威胁):



<?php
session_start();

if(isset($_POST['submit']))
{
 mysql_connect('localhost','*****','******') or die(mysql_error());
 mysql_select_db('cl29-demodb') or die(mysql_error());
 $name=$_POST['name'];
 $pwd=$_POST['password'];
 if($name!='' && $pwd!='')
 {
   $query=mysql_query("select * from EmployeeTable where EmployeeName ='".$name."' and password='".$pwd."'") or die(mysql_error());
   $res=mysql_fetch_row($query);
   if($res)
   {
    	$_SESSION['id']=$res['id'];

	header('location: profileindex.php');
   }
   else
   {
    echo "user name and password are incorrect" ;
	echo "<a href=index.php> click here to go back </a>";
   }
 }
if(!isset($_SESSION['id'])){
echo "Sorry, Please login and use this page";
exit;
}
}
?>
&#13;
&#13;
&#13;

我能够成功登录并访问用户的个人资料。但我希望个人资料只显示各个用户的信息。个人资料如下所示: profile snap

我已经编写了php来分别检索名称,名称,每周积分,总积分,每周排名和总排名。 php to pull data

我试图在html中回显变量。 但是我无法这样做。它不会提取任何数据。我在表格中列出了所有上述字段。 enter image description here

请帮助。

3 个答案:

答案 0 :(得分:3)

可能是这个原因 mysql_fetch_row()返回数字数组,您正在访问$res['id']

mysql_fetch_row替换为mysql_fetch_array或尝试使用您的ID的数字索引

$_SESSION['id']=$res[0]; or $_SESSION['id']=$res[1];

答案 1 :(得分:0)

使用mysqli_fetch_assoc以便您可以按名称调用列,如果您使用的是mysql_fetch_array,则应按索引调用列,而不是列名称。

答案 2 :(得分:-1)

由于会话已在登录页面中启动,因此无需再次在profileindex.php中启动会话。

打印sql并在后端运行它以检查是否获得了所需的结果,以便进一步调试它。