sql代码不显示表数据

时间:2012-05-01 06:09:25

标签: php mysql sql database

您好我正在尝试理解为什么这不适用于我的页面。我正在使用下面的php块来使用我在页面开头创建的变量$ sel_subj(我使用$ _GET来获取我在上一页上点击的内容的ID。我希望新页面反映出的数据我点击的链接)我得到的网址工作从数据库显示正确的数字,但我无法让我的页面显示按下的链接的名称;又名'subject'表中标有'subject_name'的列中的数据。

<?php
$query = "SELECT * FROM subjects WHERE id = \"$sel_subj\"";
$result_set = mysql_query($query, $connection);
if(!$result_set) {
    die("Database query failed: " . mysql_error());
$subject = mysql_fetch_array($result_set);
return $subject;
?>

直接进入这个h2标签。

<h2><?php echo $subject['subject_name']; ?>Hello</h2>

如果它有用,我可以发布整个页面。我感谢大家的意见 谢谢。

编辑:新问题

这是我的代码的下半部分。我在这段代码上方有一个导航div,它将指向与数据库表相关的页面的链接与我要从数据库中提取的内容分开,并显示在页面表的div中。

然而,当我在firefox中打开它时,我提供的代码没有显示在页面上。在我的html中,当我在测试服务器上预览时“查看源代码”时,下面没有任何内容......

<td id="page">

<?php
$query = "SELECT * FROM subjects WHERE id ='$sel_subj'";
$result_set = mysql_query($query, $connection);
if(!$result_set) 
    die("Database query failed: " . mysql_error());
$subject = mysql_fetch_assoc($result_set);
return $subject;

?>
            <h2><?php echo $subject['subject_name']; ?>Hello</h2>
            <br />
            <?php echo $sel_page; ?><br />
            <?php echo $sel_subj; ?><br />
            <?php echo $subject; ?><br />
            <?php echo $subject['id']; ?>
        </td>

3 个答案:

答案 0 :(得分:3)

改变这个:

$query = "SELECT * FROM subjects WHERE id = \"$sel_subj\"";

到此:

$query = "SELECT * FROM subjects WHERE id = '$sel_subj'";

和此:

$subject = mysql_fetch_array($result_set);

到此:

$subject = mysql_fetch_assoc($result_set);

PS:尽量不再使用mysql类函数,它们不太好。相反,请使用mysqli或PDO。

修改

如果列id是数字类型,请从查询中删除撇号。像这样:

$query = "SELECT * FROM subjects WHERE id = $sel_subj";

答案 1 :(得分:1)

试试这个

$query = "SELECT * FROM subjects WHERE id = '$sel_subj' ";

答案 2 :(得分:1)

试试这个

$query = "SELECT * FROM subjects WHERE id = {$sel_subj} ";