1

您好,我想了解为什么这在我的页面上不起作用。我正在使用下面的 php 块来使用我在页面开头创建的变量 $sel_subj (我使用 $_GET 来获取我在上一页上单击的内容的 id。我希望新页面反映我点击的链接)我得到了 url 以显示数据库中的正确数字,但我无法让我的页面显示按下的链接的名称;又名“主题”表中标记为“主题名称”的列中的数据。

<?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>
4

3 回答 3

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";

于 2012-05-01T06:16:19.713 回答
1

尝试这个

$query = "SELECT * FROM subjects WHERE id = '$sel_subj' ";
于 2012-05-01T06:12:36.620 回答
1

尝试这个

$query = "SELECT * FROM subjects WHERE id = {$sel_subj} ";
于 2012-05-01T06:19:23.757 回答