簡體   English   中英

如何檢查mysqli連接是否正常?

[英]how do I check if mysqli connection is working?

我是php的新手,我正在嘗試創建自己的php shop cart。 經過一些研究后,我陷入了下面的“功能產品”中,因為在我看來它不能正常工作。 我希望在我的mysql數據庫上看到我的產品的名稱,但它沒有顯示任何內容。 我的用戶名是noivaemd_etalhes,我使用的是正確的密碼,我的數據庫名稱是noivaemd_cart,我在這個數據庫中創建了一個名為Products的表,其中包含我的產品列表。 任何人都可以幫我弄清楚我在下面的php指令上做錯了什么? 我感謝任何幫助。

<?php 

session_start();
$page = 'index.php';

function products()  {
        $con = mysqli_connect("localhost", "noivaemd_etalhes", "mypassword", "noivaemd_cart") or die (mysqli_error());
        $res = mysqli_query($con, "SELECT id, name, description, price FROM Products WHERE quantity > 0 ORDER BY id DESC");
        if (mysqli_num_rows($res)==0) {
        echo "<font family=verdana><font size=6px><font color= #90882C><font style=normal><font variant= normal><br>No products available<br></font>";
            }
        else{
        while($get_row = mysqli_fetch_assoc($res)) {
                echo '<p>'.$res['name'].'</p>';
        }
    }
}

?>

這段代碼:

while ($get_row = mysqli_fetch_assoc($res)) {
    echo '<p>'.$res['name'].'</p>';
}

應該:

while ($get_row = mysqli_fetch_assoc($res)) {
    echo '<p>'.$get_row ['name'].'</p>';
}

由於您的標題還詢問如何檢查mysqli數據庫連接是否成功,您可以使用以下代碼:

$con = mysqli_connect("localhost","my_user","my_password","my_db");

// Check connection
if (mysqli_connect_errno()) {
  echo "Failed to connect to MySQL: " . mysqli_connect_error();
}

參考鏈接: http//www.php.net/manual/en/function.mysqli-connect.php

在代碼中直接連接到數據庫並不是一種好習慣。 打開另一個文件,並將其保存為“dbconnect.php”或您選擇的任何名稱。 將其保存在同一個根目錄中。

在內部數據庫連接中,您連接到數據庫,如下所示:

<?php
$mysql_host = "localhost"; 
$mysql_user = "username"; 
$mysql_pass = ""; 
$mysql_dbname = "Products"; 
$conn_error = "Sorry, Could Not Connect"; 

if(!@mysql_connect($mysql_host,$mysql_user,$mysql_pass)||!@mysql_select_db($mysql_dbname)){
    die($conn_error); 
}
?>

在你的index.php中,在你的php標簽里面寫'require'dbconnect.php“;'。

然后你得到這樣的價值觀:

$InfoQuery = " SELECT id, product, name FROM table_name WHERE quantity>0 ORDER BY id DESC"; 
    $Info = mysql_query($InfoQuery); 
    while($InfoRow=mysql_fetch_assoc($Info)){echo "<p>".$InfoRow['id']."<br>". $InfoRow['product']"."<br>". $InfoRow['name']."</p>";}

編輯:你做錯了是在你的while循環中,當你從$ get_row獲取時,你從$ res中獲取了表數據

暫無
暫無

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

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