我没有从数据库中获取价值

时间:2017-02-19 04:44:05

标签: php mysqli distinct

在我的代码中,我无法从数据库中获取值。在我的数据库中有一个值一般知识。但我得到的值是 genereal 而不是一般知识

$r_sql = "SELECT DISTINCT category_id FROM questions";

$r_query = mysqli_query($con, $r_sql);
if (!$r_query) {
    echo "DB Error, could not query the database\n";
    echo 'MySQL Error: ' . mysqli_connect_error();
    exit;
}
while($r_row = mysqli_fetch_array($r_query)){
    echo "<option value = ".$r_row['category_id'].">" .$r_row['category_id']."</option>";
}

1 个答案:

答案 0 :(得分:1)

问题是您在值中有空格,但是不要在HTML属性的值周围加上引号。你可能在浏览器中诊断出这个问题,它隐藏了真正的回声输出,试图理解破碎的代码。

echo '<option value="' . $r_row['category_id'] . '">' . $r_row['category_id'] . '</option>';

您的原始输出是

<option value = general knowledge>general knowledge</option>

然而它应该是

<option value="general knowledge">general knowledge</option>

以上PHP应生成的内容。

浏览器将其解释为<option value="general">并放弃了&#39;知识&#39;部分原因是因为它不是一个有效的属性名称,并且它并不清楚它与#34; &#39;值&#39;。

请注意,即使本网站上的语法高层也会提供知识&#39;红色,就像&#39;价值&#39;因为它认为它是一个新属性。

我不知道你有什么浏览器,但是如果我只是去查看源代码,那就在Chrome中。而不是使用开发人员工具,我可以看到REAL输出。

相关问题