意外的错误 -

时间:2013-10-09 08:06:33

标签: php mysql

我是PHP的新手,我只是在看一个设置WAMP服务器并使用PHP连接服务器的示例。我将一些数据插入到数据库的表中,并希望使用PHP文件检索所有数据。

当我尝试通过这样做检查输出时:

“localhost / android_connect / get_all_products.php”

我收到了这个错误:

解析错误:第5行的C:\ wamp \ www \ android_connect \ get_all_products.php中的语法错误,意外的'$ response'(T_VARIABLE)

这是一个例子:

    <?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);

    }
    ?>

我理解它的语法错误,但我找不到确切的位置。

2 个答案:

答案 0 :(得分: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);

}
?>

答案 1 :(得分:0)

这可能是原因

1)

  

$ result = mysql_query(“SELECT * FROM products”)或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...
}

希望这会有所帮助......