2016-01-22 34 views
2

我在一个页面上有一张表格,用户点击一名大学生并将其带到他们的个人档案页面。个人资料通过URL查询ID不回显学生姓名

<a href="profilePage.php?id=<?php echo $row['ID'] ?>" class="collection-item"> 

随着ID是特定的学生。在profilePage.php上它显示了URL上的ID,但它不打印出学生的名字。它只是空白与“学生的名字是”

<?php 
$idStudent = mysql_real_escape_string($_GET['ID']); 
$sql = sprintf("SELECT * FROM student_info WHERE id = %s", $idStudent); 
$query = mysql_query($sql); 
$student = mysql_fetch_object($query); 
?> 

<p>Student name is <?php echo $student['student_Name'] ?></p> 

我假设它是我如何调用身份证,然后从数据库中查询。我正在使用phpMyAdmin。这就是我如何连接到数据库

<?php 
$db = mysql_connect("localhost","server","password"); 
if (!$db) { 
die("Database connection failed miserably: " . mysql_error()); 
} 
$db_select = mysql_select_db("name",$db); 
if (!$db_select) { 
die("Database selection also failed miserably: " . mysql_error()); 
} 

再次问题是profilePage.php没有呼应学生姓名,即使我有在URL中的ID。

回答

3

您的网址是id=<?php echo $row['ID'] ?>和你正在使用$_GET['ID']得到那个是错在你的代码$_GET['id']!=$_GET['ID']。你可以让你的ID作为

$idStudent = mysql_real_escape_string($_GET['id']);// use small id instead id ID 

您在object form

$student = mysql_fetch_object($query); 

SO获取你的数据而不是此

<p>Student name is <?php echo $student['student_Name'] ?></p> 

使用

<p>Student name is <?php echo $student->student_Name; ?></p> 

注: - MySQL是过时而使用的mysqli或PDO

+0

谢谢!我想知道他们为什么不能互换工作 –

1

在查询您$_GET['ID']搜索id有它可以是错误。 如果你的数据库表字段ID,然后用下面的代码

$sql = sprintf("SELECT * FROM student_info WHERE ID = %s", $idStudent); 

也将;echo在PHP和你在这里得到的查询为对象,所以你必须呼应的物体,像brlow。

<p>Student name is <?php echo $student->firstName; ?></p> 

这里

<a href="profilePage.php?ID=<?php echo $row['ID']; ?>" class="collection-item"> 
+0

对语法进行了更改,但仍然注意到了这一点。它来自包含ID,firstName,year,classes的表“student_info”。 –

+0

将ID更改为

+0

我更新了现在可以运行的答案检查。从数据库中回显firstName。 –

相关问题