Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/58.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
用于按筛选器排序的php mysql select语句不起作用_Php_Mysql_Mysqli - Fatal编程技术网

用于按筛选器排序的php mysql select语句不起作用

用于按筛选器排序的php mysql select语句不起作用,php,mysql,mysqli,Php,Mysql,Mysqli,更新 我一直在尝试测试一些排序过滤器,以便在我的lamp web应用程序中添加到我的产品页面 使用mysqli请求动态加载商店页面中的所有产品子类别。但是,我想添加排序功能,以方便客户使用 页面正在加载,如下所示: 我没有收到任何解析错误 非常感谢您的帮助。我是初学者 <?php include_once 'includes/dbconnect.php'; include_once 'includes/functions.php'; include_once 'includ

更新

我一直在尝试测试一些排序过滤器,以便在我的lamp web应用程序中添加到我的产品页面

使用mysqli请求动态加载商店页面中的所有产品子类别。但是,我想添加排序功能,以方便客户使用

页面正在加载,如下所示:

我没有收到任何解析错误

非常感谢您的帮助。我是初学者

    <?php
 include_once 'includes/dbconnect.php';
 include_once 'includes/functions.php';
 include_once 'includes/header.php';
 ?>
 <?php

if (isset($_GET['asc']))
$result = $mysqli->query("SELECT id, product_code, product_name, product_desc, product_img_name, subcategory, price FROM products_coaliment_via_laietana WHERE subcategory = 'Bread' ORDER BY price ASC");
else
$result = $mysqli->query("SELECT id, product_code, product_name, product_desc, product_img_name, subcategory, price FROM products_coaliment_via_laietana WHERE subcategory = 'Bread' ORDER BY price DESC");


if (!$result)
die("Failed to show queries from table");

if(mysqli_num_rows($result) > 0) { 
$products_item = '<div class="product-category-wrapper">';
//fetch results set as object and output HTML
while($row = mysqli_fetch_assoc($result)) {

$products_item .= <<<EOT
                            <div class="custom-product-column">
                            <div class="product-wrapper">
                            <div class="product-image">
                                <img src="{$obj->product_img_name}" alt={$obj->product_name}">
                            </div>
                            <div class="product-price">
                                <p>{$currency}{$obj->price}</p>
                             </div>
                             <div class="product-title">
                                <h4>{$obj->product_name}</h4>
                                {$obj->product_desc}
                            </div>
                            <div class="basketControls">
                                    <ngcart-addtocart id="{$obj->id}" name="{$obj->product_name}" price="{$obj->price}" quantity="1" quantity-max="10">Add to Cart</ngcart-addtocart>
                                </div>
                        </div>
                    </div>
EOT;
}

$products_item .= '</div>';
echo $products_item;
}
?>          

<form method="get" action="<?php echo $_SERVER['PHP_SELF']; ?>">
<button type="submit" id="asc" name="asc" value="asc">ASC</button>
<button type="submit" id="asc" name="desc" value="desc">DESC</button>
</form>


您需要在
name
fieldname周围加上反勾,因为“name”在MySQL中是一个保留字:

SELECT * FROM products_nonstop24 ORDER BY `name` ASC

如果可以,你应该这样做。已在PHP7中删除。了解使用PDO的语句,并考虑使用PDO,不客气。您的代码在多个方面失败。对于您的mysql版本:请参考以下链接并将其应用于您的代码。对于您的mysqli和-您将看到什么没有发生,什么是错误。
echo mysql_error()出现语法错误消息。它还应该指定发生错误的文件和行号。看看那一行(可能还有它前面的几行),你应该能够发现错误。“name”不是MySQL的“保留字”,而是“关键字”(两种不同的动物)——这不是问题所在。再次查看他们的代码,并进行“仔细梳理”。你会知道怎么了。我发现了三件事。编辑:4.感谢您指出这一点,这实际上是我在为我的模式制作演示时的一个疏忽。我的列名实际上是产品名,已经做了必要的编辑。再次感谢!