2016-09-24 120 views
0

請幫我拿出我的代碼。 explode()沒有爲我工作。php爆炸效果不好

我需要的是將所有這些分離的單詞插入數組「$traceData」,以便我可以通過數組索引訪問它們。 ($traceData[1]$traceData[2] ...)

$_GET[allTrace]是:

Quality|good|bad|reason\nQuality2|good2|bad2|reason2\nQuality3|good3|bad3|reason3\n

$allTrace = explode("\n",$_GET[allTrace]); 

foreach ($allTrace as $value) { 

$row = explode("|", $value); 

    foreach($row as $traceData) { 

     mysqli_query($con,"INSERT INTO trace VALUES (null, '$_COOKIE[user011]', '$traceData[0]', '$traceData[1]','$traceData[2]', $date, '$traceData[3]', '$_GET[page]')"); 

    } 
} 

謝謝。

+0

'$ allTrace =爆炸( 「\ n」 ,$ _ GET [allTrace]);'需要'$ allTrace = explode('\ n',$ _ GET ['allTrace']);'檢查一次 –

+0

'$ allTrace = explode(「\ n」,$ _ GET [ allTrace]);'沒有道理。寫它**'$ allTrace = explode(「\ n」,$ _ GET [「allTrace」]);'** – SHAZ

回答

0

你有太多for循環那裏,你的$行將包含你想要的。

$string = "Quality|good|bad|reason\nQuality2|good2|bad2|reason2\nQuality3|good3|bad3|reason3\n"; 

$allTrace = explode("\n",$string); 

foreach ($allTrace as $value) { 
$row = explode("|", $value); 
    print_r($row); 
} 

然後,您將爲該

$row = Array ([0] => Quality [1] => good [2] => bad [3] => reason) 

所以,你想擁有什麼的foreach的第一次迭代注意到的是:

$allTrace = explode("\n",$_GET[allTrace]); 

foreach ($allTrace as $value) { 

    $traceData = explode("|", $value); 

    mysqli_query($con,"INSERT INTO trace VALUES (null, '$_COOKIE[user011]', '$traceData[0]', '$traceData[1]','$traceData[2]', $date, '$traceData[3]', '$_GET[page]')"); 
}