2015-08-17 182 views
0

我是PHP新手。我有一個代碼,我從中獲取記錄數據庫。我根據需要在其中使用多個SQL查詢。在這裏我有一個問題。我的一個查詢攜帶零行,意味着沒有數據分貝對該查詢。當我運行我的代碼時,瀏覽器頁面上沒有顯示任何內容。我希望有數據的查詢將被顯示,並且沒有數據的查詢將被忽略。如果一個查詢帶有空結果,如何回顯多個MYSQL結果?

這裏是我的代碼

<?php 
ini_set('error_reporting', E_ALL); 
$servername = "localhost"; 
$username = "root"; 
$password = ""; 
$dbname = "pacra1"; 


$conn = new mysqli($servername, $username, $password, $dbname); 
$sql = "SELECT * 
FROM `pacra_client_opinion_relations` 
WHERE `client_id` =97 LIMIT 1"; 

$sql1 = "SELECT * 
FROM `pacra_client_opinion_relations` 
WHERE `client_id` =97 LIMIT 1,1"; 

$result = $conn->query($sql); 

$result1 = $conn->query($sql1); 

while ($row = $result->fetch_assoc()){ 
    while ($row1 = $result1->fetch_assoc()){ 
echo $row ['creation_date']; 

echo '<br>'; 

    echo $row1 ['creation_date']; 
} } 

?> 

二SQL查詢攜帶NULL結果

能否請你幫我,我怎麼能打印我的數據?

回答

1

這裏的問題是您從多個語句中混合獲取數據。在開始第二個查詢之前,您需要確保您從一個查詢中獲取所需的所有數據。

$row1 = $conn->query($sql1)->fetch_assoc(); 
$row2 = $conn->query($sql2)->fetch_assoc(); 

echo $row1 ['creation_date']; 
echo '<br>'; 
echo $row2 ['creation_date']; 

只要你知道每個結果只有一行,這將工作得很好。

+0

在我的問題有示例查詢。其實我有5個查詢 – sunny

+0

簡單的是...假設我有一個查詢從db獲取記錄對任何id ..一些id有2行一些有3行,有些有5行。我用LIMIT 1,1取第二行,LIMIT 2,1取第三行...... !!!!要單獨提取每一行,我使用單獨的查詢。讓我們假設一個ID只有2行,我使用查詢來獲取第三行然後它的意思是我的查詢將是空的。當我的查詢爲空時,它不會顯示其他兩個問題的結果 – sunny

+0

但是,您的查詢沒有說明**您正在嘗試執行的目標**。你只是簡單地說:「我試圖從5張桌子上讀取」,但我問「爲什麼?你需要什麼?」 :) –