簡體   English   中英

基於表單選擇的PHP列表:MDB2錯誤:語法錯誤

[英]PHP List based on Form Selection: MDB2 Error: syntax error

我正在創建一個表格,該表格根據表單選擇輸出國家/地區詳細信息列表,但我不斷收到此錯誤: MDB2 Error: syntax error 如何解決這種類型的錯誤?

這是我的代碼:

<?php
    $db =& MDB2::connect($dsn); 
    if(PEAR::isError($db)){ 
        die($db->getMessage());
    }
    $table_name="country";
    $db->setFetchMode(MDB2_FETCHMODE_ASSOC);

    $country_id = mysql_real_escape_string($_GET["country_id"]);

    // collect values from a form sent with method=get
    $gdp = mysql_real_escape_string($_GET["gdp"]);
    $population = mysql_real_escape_string($_GET["population"]);
    $country_name = mysql_real_escape_string($_GET["country_name"]);
    $gold = mysql_real_escape_string($_GET["gold"]);
    $bronze = mysql_real_escape_string($_GET["bronze"]);
    $silver = mysql_real_escape_string($_GET["silver"]);
    $total = mysql_real_escape_string($_GET["total"]);

    $sql = "SELECT * FROM $country WHERE country_id='$country_id'";

    $res =& $db->query($sql);      //MDB2 Error: syntax error

    if (PEAR::isError($res)) {
        die($res->getMessage());    //error printed here
    }
?>

在您的"SELECT * FROM $country WHERE country_id='$country_id'" ,未定義變量$country ,因此它將呈現為"SELECT * FROM WHERE country_id='1'" ,因此出現SQL錯誤。

看起來您的意思是$table_name ,其值為 'country'

由於似乎只是幾行而已定義,因此直接在SQL語句中編寫而不是使用變量可能會更有意義,但也許以后會有該變量的計划...

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM