2013-06-20 33 views
0
mysql_connect('localhost:3036', 'x', 'x'); 
mysql_select_db('extractor'); 
$baseSKUraw = mysql_query("SELECT * FROM product_category where tier_one='".$result1."' and tier_two ='".$result2."' "); 
$baseSKU = mysql_fetch_array($baseSKUraw); 
echo json_encode(array("error"=>0, "result1"=>$baseSKU['sku_base'])); 

的JSON是返回{"error":0,"result1":null}但是當我做一個"result1"=>"texthere"將相應回到我的文本框中。mysql_fetch不顯示

  • 這裏出了什麼問題,我似乎無法顯示sku_base
  • 什麼時候應該使用mysql_fetch_array?因爲我現在只返回1 結果?

的var_dump(baseSKUraw);

resource(3) of type (mysql result) 
{"error":0,"result1":null} 

print_r($ baseSKU);

resource(3) of type (mysql result) 
Array 
(
    [0] => 1 
    [id] => 1 
    [1] => Tops 
    [tier_one] => Tops 
    [2] => Shortsleeve 
    [tier_two] => Shortsleeve 
    [3] => WTSS 
    [sku_base] => WTSS 
) 
+0

這應該標記爲JavaScript而不是Java? – Craig

+0

您是否嘗試執行var_dump($ baseSKUraw),以查看您是否獲得任何結果?無論如何,嘗試使用MYSQLi或PDO_MYSQL來代替。所有mysql_函數都被棄用 – Thanu

+0

在你的'json_encode'行之前加'echo mysql_error();'然後用輸出更新問題。 –

回答

1

你的問題是在這裏,

$baseSKU = mysql_fetch_array($baseSKUraw); 
echo json_encode(array("error"=>0, "result1"=>$baseSKU['sku_base'])); 

您使用mysql_fetch_array,並試圖使用效果,如果它是用mysql_fetch_assoc返回。當您使用mysql_fetch_array時,您需要使用數字索引。

+1

mysql_fetch_array()的默認返回模式返回一個包含關聯鍵和數字鍵的數組... –

+0

Hi @ DevZer0,謝謝。你能解釋一下array和assoc之間的區別嗎?哪一個是我應該使用的正確的。你如何調試Ajax?因爲print_r var_dump不會顯示,除非我返回json_encode。同時,我看到有人使用print_r,var_dump,我應該使用什麼,兩者?順便說一句,我用螢火蟲檢查的JSON響應,我認爲它工作良好 – CodeGuru

+0

只是使用你覺得給你最好的輸出,我個人使用'print_r' – DevZer0