在这里寻找建议的自学新手......
我对MySQL数据库进行了非常简单的PHP查询,该数据库假设生成一个下拉菜单,其中填充了来自MySQL数据库的信息。我想知道如果基于这篇文章中包含的代码,有人可以引导我朝着正确的方向前进,或者提出一个关于我应该做什么的建议。
P.S。 MySQL数据库是产品我从中选择的表是产品,而我想要选择的列是 description 。
<?php
$adConn = mysqli_connect("localhost", "user", "password", "products");
$result = "SELECT * FROM products where Description order by descending";
$result = mysqli_query($adConn, $result);
echo "<select name='product'>";
while ($row = mysql_fetch_array($result))
{
echo "<option value='" . $row['Description'] . "'>" . $row['Description'] . "</option>";
}
echo "</select>";
?>
答案 0 :(得分:2)
您的where
条件不正确。还要查找order by
。
试试这个:
$result = "SELECT * FROM products where Description = 'SOME VALUE' order by SOME FIELD desc;
请参阅:http://dev.mysql.com/doc/refman/5.7/en/select.html
此外,您正在混合mysqli_*
和mysql_*
。
请不要使用mysql_*
它已被弃用并从PHP 7中删除。
答案 1 :(得分:0)
如果您只是在查找产品表中的说明,则可以将select语句更改为以下内容:
SELECT description
FROM products
ORDER BY <column name> desc;
这将根据列名以降序为您提供产品表的所有说明。不确定您要在产品表上订购什么,但需要在ORDER BY
子句中添加列名。
注意 - 您的WHERE
子句中有 description ,因此如果您要查找特定的说明,您可以执行以下操作:< / p>
SELECT description
FROM products
WHERE description = 'some specific description';
仅返回一个特定的描述,因此不需要ORDER BY
子句。
答案 2 :(得分:0)
您需要了解如何创建SQL语句的基本概念。
以下是您可以查看的一些基本查询:
简单直接选择全部:
SELECT * FROM products;
选择列值等于某物的位置:
SELECT * FROM products WHERE product_category=foo;
按列升序(ASC
)或降序(DESC
)顺序选择和排序:
SELECT * FROM products ORDER BY product_id DESC;
现在让我们将它们结合起来:
SELECT * FROM products
WHERE product_category = foo
ORDER BY product_id DESC;
最好将所有SQL函数保存为大写,列名和值小写,以便于阅读。另外,请不要使用mysql_*
,因为它已被弃用并从PHP 7中删除。相反,请使用mysqli_*
。
答案 3 :(得分:0)
我要感谢大家的意见和建议。这个网络社区结果非常好。我很高兴网上还有人愿意集体讨论并帮助新手!
祝你有美好的一天!