2016-01-22 54 views
-2

我試圖讓我的樹莓像網絡服務器一樣工作。查詢不適用於我的樹莓派2B

這一切工作,除了我的mysql數據庫的查詢。值是正確的,查詢是正確的,我的數據庫工作正常。

但是,當我想從PHP數據庫中獲取信息時,它會給出一個空的結果。

代碼:

<?php 

$dbCon = new mysqli($servername, $username, $password, $database); 

$Query = "SELECT * FROM `machineuptime`"; 

if($stmt = $dbCon->prepare($Query)) 
{ 
    $stmt->execute(); 

    $result = $stmt->get_result(); 

    while($row = $result->fetch_assoc()) 
    { 
     $ArrayData2[] = $row; 
    } 
} 

echo "this is de first row of the array: " . $ArrayData2[0]['ID'] . ". Thats nice!"; 
?> 

結果:

this is de first row of the array: . Thats nice!

即使當我使用查詢在phpMyAdmin,它給人的值返回,所以查詢是沒有錯的。

那麼我該如何解決這個問題呢?

編輯:

,我得到的是錯誤。

Fatal error: Call to undefined method mysqli_stmt::get_result() in /var/www/html/Stramit/index.php on line 59 
+0

即使我不,這個代碼工作在我的筆記本... – Bart88

+1

嘗試啓用錯誤報告補充一點:'的error_reporting(E_ALL); ini_set('display_errors',-1);'到php部分的頂部 – BRoebie

+0

您沒有結束您的查詢與「 - 是一個錯字,或者實際上在源?」 –

回答

0

你不關閉查詢:

$Query = "SELECT * FROM `machineuptime`; 

將其更改爲:

$Query = "SELECT * FROM `machineuptime`"; 

也爲錯誤

Fatal error: Call to undefined method mysqli_stmt::get_result() in /var/www/html/Stramit/index.php on line 59

看看this answer.

請看用戶注意事項http://php.net/manual/en/mysqli-stmt.get-result.php

它需要mysqlnd驅動程序。請確保安裝了該驅動程序。如果您沒有安裝它們,請使用BIND_RESULT & FETCH

取消註釋了extension = php_mysqli_mysqlnd.dll in php.ini;並重新啓動Apache2.2和MySQL服務。在答案的評論中說。

這裏是鏈接到驅動程序:http://php.net/manual/en/book.mysqlnd.php

您在安裝後,你應該能夠使用$stmt->get_result(); ofcourse重啓樹莓派。

注:您的PHP版本必須高於PHP 5.3.0

+0

有沒有一種方法可以安裝使用fetch_assoc的驅動程序? – Bart88

+0

它不是fetch_assoc它是get_result,我將爲它添加鏈接。 – BRoebie

+0

如果您有任何結果(好或不好)請回報。 – BRoebie