2017-07-03 119 views
1

我目前正在製作一個網頁,旨在顯示數據庫中的所有內容。所以我做了一個SQL命令,它只選擇網頁上一個特定字段所需的數據。如何分別顯示SQL結果

是否可以製作SQL命令,以便一次獲得頁面的所有內容,並且該病還能夠單獨顯示它? 如果是這樣,怎麼樣?由於

function dbGet() { 
    global $conn; 
    global $return; 

    $sql = SELECT * FROM testTable; 
    $result = $conn->query($sql); 

    if ($result->num_rows > 0) { 
     while($row = $result->fetch_assoc()) { 
      $return = $row["text"]; 
      return $return; 
     } 
    } 
    else { 
     echo "0 results"; 
    } 
    // $conn->close(); 
} 
+0

您想返回表的完整數據。是嗎? –

+0

第一個問題,你只返回1個值,試試:'$ return [] = $ row [「text」];' – AbraCadaver

+0

@MuhammadUsman如果這是能夠在頁面上精確顯示所有數據的最佳方式,是。 – Yorick

回答

0

您可以用這種方法,通過它可以識別已經有或沒有記錄使用。

function dbGet() { 
    global $conn; 
    // I am not sure what is the datatype of $return here. 
    // if it's having a predefined format, 
    // please push the records into $return instead of creating as an array, 
    // which will be taken care by framework if any you are using. 

    // global $return; 
    $return = array('status' => false, records => []); 

    $sql = "SELECT text FROM testTable"; 
    $result = $conn->query($sql); 
    if ($result->num_rows > 0) { 
     $return['status'] = true; 
     while($row = $result->fetch_assoc()) { 
      $return['records'][] = $row["text"]; 
     } 
    } 

    // $conn->close(); 
    return json_encode($return); 
} 
+0

謝謝,做了一些小的改動,但是這個想法整體起作用:D – Yorick

0

只是呼應,而不是在任何格式你想

如果你正在使用PHP返回while循環的結果,你可以嘗試像

echo $row["text"]; 

希望它可以幫助

讓我知道如果您需要任何進一步的幫助

0

首先你sh烏爾德解決您的返回碼所提到@AbraCadaver

 $return[] = $row["text"]; 

然後你就可以在你的HTML中使用foreach

<?php 
foreach($return as $r){ 

    echo $r['text']; 
} 
?> 
+0

嗯好吧,你能解釋一下,如果我把這個應用到我的代碼中,分別顯示選中的數據嗎? 例如testTable中有多個記錄需要彼此分開顯示。 – Yorick

+0

@Yorick你是什麼意思?他們是分開的! '$ return [0] ['text']'或''$ return [1] ['text']''等等...... –