2014-02-21 25 views
0

我在我的網頁一些形式,如:

<form method="get"> 
Enter Your Firstname :<input type="text" name="t1" /> 
Enter Your Lastname :<input type="text" name="t2" /> 
<input type="submit" name="sb" /> 
</form> 

因此用戶將填補這一形式,我想有這樣的形式逗號

分離例如

John,Smith 
James,Baker 

所以這裏是我的PHP代碼

if (isset ($_GET['sb'])) 
{ 
    $t_array = array("t1","t2"); 
    foreach ($t_array as $key) 
    { 
     echo implode(',' , $_GET[$key]); 
    } 
} 

當我嘗試這樣做,我得到這個錯誤:

Warning: implode() [<a href='function.implode'>function.implode</a>]: Invalid arguments passed in PATH on line 24 

我不知道爲什麼我不能用爆在$ _GET或$ _POST

我怎麼能解決這個問題?

PS:我想用數組,在我的網頁破滅,請不要寫其他的方式

+0

'$ _GET ['t1']'不是一個數組,而是一個字符串。我猜你需要的是爆炸。 – Rikesh

+1

$ _GET [$ key]不是數組。這是一個字符串值。你必須將第二個參數作爲數組傳給implode – Hassan

+0

@Hassan,那麼我怎樣才能接收我的表單數據作爲input1,input2? – user3325376

回答

0

你需要的是類似下面,你實際上並不需要破滅了這一點:

if (isset ($_GET['sb'])) 
{ 
    $t_array = array("t1","t2"); 
    $result = ''; 
    foreach ($t_array as $key) 
    { 
     if ($result != '') $result .= ','; 
     $result .= $_GET[$key]; 
    } 
} 
+0

請再次閱讀我的文章... 我想將這個值保存在數據庫中,所以我需要通過GET或POST接收它們! 我想用逗號分隔每個表格的值 – user3325376

1

你在一個值上調用implode,而不是數組。此代碼

echo implode(',' , $_GET[$key]); 

調用$_GET[$key],這是一個字符串。

你正在嘗試使用implode($_GET);

0

不能impode串...

嘗試是這樣的:

if (isset ($_GET['sb'])) 
{ 
    $t_array = array("t1","t2"); 
    $arr = array(); 
    foreach ($t_array as $key) 
    { 
     $arr[] = $_GET[$key]; 
    } 
    echo implode(',' , $arr); 
} 
+0

謝謝,它工作正常 – user3325376

+0

不客氣,很高興我可以提供幫助。 – Shomz

3

有一個在你的邏輯錯誤。

這裏是示例代碼,可以幫助你:

$t_array = array($_GET['t1'], $_GET['t2']); 
$imploded = implode(',', $t_array); 
echo $imploded; 

這將工作。

+0

爲什麼不在一條線上做? '$ _GET [ 'T1'。 ''。$ _ GET [ 'T2']'。還是它是一個新的遊戲,所有事情都必須用「implode」來完成? :) –

+0

謝謝你的通知。這個想法是解釋使用implode的方式。 –