2013-12-03 70 views
-1

所以最近我從我的筆記本電腦中移動了我的php文件和數據庫,其中一切都完美地工作到我的服務器(Ubuntu 12.04 LTS)。mysqli php query haywire

突然我所有的查詢停止工作。所以我開始排除故障。所需的PHP軟件包都已安裝(您可以在sibstechnologies.com/kaas.php上查看我的phpinfo())。數據庫連接工作得很好。下面的代碼的結果告訴我,連接工作,但查詢返回null。 (請參閱此頁http://sibstechnologies.com/koekoek.php)。我100%肯定查詢工作和數據庫存在,如果我在mysql命令行編輯器中測試它,我會得到我想要的結果。

<html> 
    <body> 
    <?php 
    include "db_connect.php"; 
    if ($mysqli->connect_error) { 
     echo "Not connected, error: " . $mysqli_connection->connect_error; 
    } 
    else { 
     echo "Connected."; 
    } 
    $result = mysqli_query($mysqli, "SHOW TABLES"); 
    $query_result=mysql_query($showtablequery); 
      while($showtablerow = mysql_fetch_array($query_result)) 
      { 
      echo $showtablerow[0]." "; 
      } 

    foreach ($result as $row) { 
    echo "nana \n"; 
    var_dump($row); 
    } 
    ?> 

    </body> 
    </html> 

非常感謝,如果你需要額外的信息,讓我知道

+0

我看不到在代碼中定義的$ showtablequery。 –

+0

** mysql_fetch_array **和** mysql_query **是你的問題,amigo。仔細看看 – Leonardo

回答

0

我找到了anwser。我使用php5-mysqlnd在php和mysql之間進行通信。但我使用過時的PHP版本。

如果您有類似的問題,請確保您使用的是最新版本的一切。

php --version 
mysql --version 

在終端中輸入這兩行,檢查是否確實是最新版本。

1

你混合庫:

$result = mysqli_query($mysqli, "SHOW TABLES"); 
       ^---note the i 
$query_result=mysql_query($showtablequery); 
        ^---note the LACK of an i 

這不是「突然停止工作」。這是永遠不要在第一個地方工作。

+0

foreach循環應該仍然正常工作。這只是我投入測試的一頁。我的離線頁面上顯示的結果是:Connected.nana array(1){[「Tables_in_SBS」] => string(8)「acordeon」} nana array(1){[「Tables_in_SBS」] => string(5)「redev」} nana array(1){[「Tables_in_SBS」] => string(6)「topbar」} nana array(1){[「Tables_in_SBS」] => string(7)「網頁」} –