从php MySQL数据库获取数据不工作
我让我的表单工作得很好,并从数据库中获取数据。但是最近我修改了登录页面中的一些内容,以便将不同的页面分配给不同的用户,一旦他们成功登录,现在我就不会在studentloggedin.php中显示他们的数据(结果)。提前感谢 我认为问题在于我假设的变量 studentloggedin.php从php MySQL数据库获取数据不工作,php,mysql,database,Php,Mysql,Database,我让我的表单工作得很好,并从数据库中获取数据。但是最近我修改了登录页面中的一些内容,以便将不同的页面分配给不同的用户,一旦他们成功登录,现在我就不会在studentloggedin.php中显示他们的数据(结果)。提前感谢 我认为问题在于我假设的变量 studentloggedin.php <?php //code for display marks $con=mysqli_connect("localhost","kurtfarrugia","1234","kurt_farrugia"
<?php
//code for display marks
$con=mysqli_connect("localhost","kurtfarrugia","1234","kurt_farrugia");
// Check connection
if (mysqli_connect_errno())
{
echo "Failed to connect to MySQL: " . mysqli_connect_error();
}
$result = mysqli_query($con,"SELECT * FROM tblexamresults WHERE admin_usr_name ='$username'");
while($row = mysqli_fetch_array($result))
{
echo "English: " . $row['english'] . " marks";
echo "<br />";
echo "<br />";
echo "Maltese: " . $row['maltese'] . " marks";
echo "<br />";
echo "<br />";
echo "Italian: " . $row['italian'] . " marks";
echo "<br />";
echo "<br />";
echo "PSE: " . $row['pse'] . " marks";
echo "<br />";
echo "<br />";
echo "Social Studies: " . $row['social_studies'] . " marks";
echo "<br />";
echo "<br />";
echo "Physical Education: " . $row['physical_education'] . " marks";
echo "<br />";
echo "<br />";
echo "Drama: " . $row['drama'] . " marks";
echo "<br />";
echo "<br />";
echo "Graphical Communication: " . $row['graphical_communication'] . " marks";
echo "<br />";
echo "<br />";
echo "Computer Studies: " . $row['computer_studies'] . " marks";
echo "<br />";
echo "<br />";
echo "Mathematics: " . $row['mathematics'] . " marks";
echo "<br />";
echo "<br />";
echo "Integrated Science: " . $row['integrated_science'] . " marks";
echo "<br />";
echo "<br />";
echo "Physics: " . $row['physics'] . " marks";
echo "<br />";
echo "<br />";
echo "<br />";
$total = $row['english'] + $row['maltese'] + $row['italian'] + $row['pse'] + $row['social_studies'] + $row['physical_education'] + $row['drama'] + $row['graphical_communication'] + $row['computer_studies'] + $row['mathematics'] + $row['integrated_science'] + $row['physics'];
$average= $total / 11;
echo "Statistics:";
echo "<br />";
echo "<br />";
echo "Your average mark is: " . round($average, PHP_ROUND_HALF_UP) . " marks";
}
mysqli_close($con);
?>
您的SQL查询中的变量$username
从未设置
$result = mysqli_query($con,"SELECT * FROM tblexamresults WHERE admin_usr_name ='$username'");
也没有在URL中传递
header( "Location: studentloggedin.php" );
您应该将用户名输入URL,并获取执行查询所需的值。不要试图猜测问题出在哪里。调试代码以清楚地确定问题的确切位置。检查PHP错误日志,并在每次调用mysql\u query()
后检查mysql\u error()
。如果仍然注入SQL,则没有理由使用mysqli
。仔细研究,这样人们就不能将他们想要的任何东西注入到你的代码中。你指的是什么url?这是一个标题(“location:studentloggedin.php”);但我认为,正如您已经做的那样,将用户名放入会话中,在studentloggedin.php中调用会话_start(),并从会话(而不是从帖子)中获取学生用户名,解决了问题。将变量username分配给my studentloggedin.php页面。谢谢大家!
$result = mysqli_query($con,"SELECT * FROM tblexamresults WHERE admin_usr_name ='$username'");
header( "Location: studentloggedin.php" );