簡體   English   中英

MYSQL SELECT 僅查詢一個數據

[英]MYSQL SELECT QUERY ONLY ONE DATA

下面的view_products()僅顯示我的表product中的一個數據,其中包含 20 個數據。 根據您放置的位置return $output; 在顯示第一個數據的while loop while loop或在顯示最后一個數據的 while 循環外。

<?php echo view_products(); ?>
$dbhost = "localhost";
$dbuser = "root";
$dbpass = "password@edadmin";
$dbname = "estore";
$dbconn = mysqli_connect($dbhost, $dbuser, $dbpass, $dbname);

//Test if connection occurred,
if (mysqli_connect_errno()) {
    die("Database connection failed: " .
        mysqli_connect_error() .
        " (" . mysqli_connect_errno() . ")");
}
function view_products()
{
    global $dbconn;

    $sql = "SELECT * FROM product";
    $result = mysqli_query($dbconn, $sql);

    
    if (mysqli_num_rows($result) > 0) {
        while ($products = mysqli_fetch_assoc($result)) {
            $output = "<div class=\"col-lg-4 col-md-6 portfolio-item filter-app wow fadeInUp\">";
            $output .= "<div class=\"portfolio-wrap\"><figure>";
            $output .= "<img src=" . $products['ProductImage'] . " class=\"img-fluid\" alt=\"\">";
            $output .= "<a href="  . $products['ProductImage'] . " data-lightbox=\"portfolio\" data-title=\"App 1\" class=\"link-preview\" title=\"Preview\"><i class=\"ion ion-eye\"></i></a>";
            $output .= "</figure>";
            $output .= " <div class=\"portfolio-info\">";
            $output .= "<p><a href=\"#\">" . $products['ProductName'] . " </a></p>";
            $output .= "<p>" . "&#x20a6 " . $products['ProductAmount'] . "</p>";
            $output .= "</div></div></div>";
            return $output;
        }
    } else {
        return "No product yet";
    } // return $output;
}

原因是您在循環的第一行重置$output的內容$output = "<div class=\"col-lg-4 col-md-6 portfolio-item filter-app wow fadeInUp\">"; 所以如果你把return放在循環的末尾,在第一個循環中它將返回第一條記錄並退出function,如果你把它放在function的末尾,在每個循環中$output都會被清除,內容該循環的內容將僅寫入$output因此在 function 的末尾,您將只有最后一個循環的內容$output

您可以將$output設置為空字符串,然后將 append 設置為循環中的所有內容。 還要在else塊中設置$output的值,然后在最后返回$output

function view_products()
{
global $dbconn;

    $sql = "SELECT * FROM product";
    $result = mysqli_query($dbconn, $sql);

    
    if (mysqli_num_rows($result) > 0) {
        $output = "";
        while ($products = mysqli_fetch_assoc($result)) {
            $output .= "<div class=\"col-lg-4 col-md-6 portfolio-item filter-app wow fadeInUp\">";
            $output .= "<div class=\"portfolio-wrap\"><figure>";
            $output .= "<img src=" . $products['ProductImage'] . " class=\"img-fluid\" alt=\"\">";
            $output .= "<a href="  . $products['ProductImage'] . " data-lightbox=\"portfolio\" data-title=\"App 1\" class=\"link-preview\" title=\"Preview\"><i class=\"ion ion-eye\"></i></a>";
            $output .= "</figure>";
            $output .= " <div class=\"portfolio-info\">";
            $output .= "<p><a href=\"#\">" . $products['ProductName'] . " </a></p>";
            $output .= "<p>" . "&#x20a6 " . $products['ProductAmount'] . "</p>";
            $output .= "</div></div></div>";
        }
    } else {
        $output = "No product yet";
    } // return $output;
    return $output;
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM