2013-10-09 267 views
0

我對PHP很陌生,我只是看一個例子來設置一個WAMP服務器並使用PHP來連接服務器。我在數據庫中的表中插入了一些數據,並希望使用PHP文件檢索所有數據。意外錯誤 -

當我嘗試這樣做是爲了檢查輸出:

「本地主機/ android_connect/get_all_products.php」

我得到這個錯誤:

解析錯誤:語法錯誤,意想不到 '$響應'(T_VARIABLE)在C:\瓦帕\ WWW \ android_connect \ get_all_products.php第5行

這是例如:

<?php 
    // array for JSON response 

    $response = array(); 
    $db = new DB_CONNECT();  
    $result = mysql_query("SELECT *FROM products") or die(mysql_error()); 

    if (mysql_num_rows($result) > 0) { 
        $response["products"] = array(); 
        while ($row = mysql_fetch_array($result)) { 

            $product = array(); 
            $product["id"] = $row["id"]; 
            $product["name"] = $row["name"]; 
            $product["price"] = $row["price"]; 
            $product["description"] = $row["description"]; 
            $product["created_at"] = $row["created_at"]; 
        $product["updated_at"] = $row["updated_at"];  
      array_push($response["products"], $product); 

     } 
         
     $response["success"] = 1; 
     echo json_encode($response); 
    } else { 

        $response["success"] = 0; 
        $response["message"] = "No products found"; 
        echo json_encode($response); 

    } 
    ?> 

我知道它的語法錯誤,但我找不到確切的地方。

+1

您已經粘貼沒有你提到的錯誤代碼。 –

+4

如果您剛剛開始學習,請首先學習MySQLi或PDO,並準備好語句/綁定變量,而不是舊的不推薦使用的MySQL擴展名......在第一次開始學習時進入良好實踐,並且那麼你將不必在未來學習和重新學習 –

+0

感謝您的建議@Mark。我會做同樣的事 – Vivekanand

回答

0

我修改了代碼,請檢查下面

<?php 
// array for JSON response 

$response = array(); 
$db = new DB_CONNECT(); 
$result = mysql_query("SELECT *FROM products") or die(mysql_error()); 

if (mysql_num_rows($result) > 0) { 
    while ($row = mysql_fetch_array($result)) { 

     $product = array(); 
     $product["id"] = $row["id"]; 
     $product["name"] = $row["name"]; 
     $product["price"] = $row["price"]; 
     $product["description"] = $row["description"]; 
     $product["created_at"] = $row["created_at"]; 
     $product["updated_at"] = $row["updated_at"]; 
     $products[] = $product; 

    } 

    $response["products"] = $products; 
    $response["success"] = 1; 
    echo json_encode($response); 
} else { 

    $response["success"] = 0; 
    $response["message"] = "No products found"; 
    echo json_encode($response); 

} 
?> 
+0

代碼中沒有語法錯誤,你修改了哪些可以修復不存在的錯誤? –

+0

嗨爲什麼這個代碼下來投票。這應該工作.. – user111

+0

@Hanky只是我即興他的代碼。你有沒有在我的代碼中發現任何錯誤:) – user111

0

這可能是該行你存儲的輸出結果變量可能是原因

1)

$result = mysql_query("SELECT *FROM products") or die(mysql_error());

錯誤行...

使用以下格式...它像冠軍:)

$Result = mysql_query($sql, $conn); 
if (!$Result){ 
echo "<br>** Error in database table <b>".mysql_error()."</b><br>$sql"; 
} 
else 
{ 
    //do something you want to do... 
} 

希望這有助於....