2015-11-13 131 views
2

我目前有這個問題。下面是測試陣列查詢打印空implode PHP

$skupu = array('a1','a5'); 

這是我的查詢:

$consult_sku= 'SELECT * FROM fulfillment_test WHERE sku IN (' . implode(',', $skupu) . ')'; 
$result_s= mysqli_query($db, $consult_sku); 

如果我打印result_s的結果是空的,如果我將此 mysqli_fetch_assoc($result_s); error_log裏告訴我:

PHP警告:不能修改標題信息 - 已經發送的標題(輸出開始於

我的數據庫表有一列

sku 
a1 
a2 
a3 
a4 
a5 

我怎樣才能解決這個問題?

那麼我解決了麻煩,但現在當我只是運行查詢只打印查詢的第一個結果,只是打印A1但A5不是,怎麼能解決這個問題?

只是原理:a1

+0

您的問題與您的查詢或您使用內爆沒有關係。如果你[搜索這個PHP警告](http://stackoverflow.com/search?q=cannot+modify+header+information),你會看到它是因爲你試圖在某個地方設置HTTP標頭,但輸出已經開始。 – miken32

+0

我解決了錯誤,但是現在當查詢運行只是打印第一個結果而不是兩個時,爲什麼可以解決這個問題呢? – victor

回答

0

Implode你的數組,然後傳遞給查詢。

$skupu = array('a1','a5'); 
$skupuImploded = implode(',', $skupu); 

$consult_sku= "SELECT * FROM fulfillment_test WHERE sku IN ($skupuImploded)"; 
$result_s= mysqli_query($db, $consult_sku);