2015-05-13 164 views
1

多行我有這樣一個<form>標籤multicheckbox:插入與PDO

<input type="checkbox" name="del[]" value="<?php echo $menuItems['id']; ?>"> 

我問這個形式與此代碼:

if (isset($_POST['subgruppe'])) { 
     $ids = array(); 

    foreach ($_POST['del'] as $pval) { 
     $ids[] = (int) $pval; 
    } 

    $ids = implode(',', $ids); 
    echo "groupids"; 
    echo $ids; 
    echo "userid:"; 
    echo $_POST['userid']; 

這說明了我這樣的結果:

groupids13,9...userid:5 

我需要一個說明,給我這樣的結果:

INSERT INTO user_groups (usergroup, userid) VALUE (13,5),(9,5) 

... 你能給我一個提示,我可以檢查這個嗎? 我想我可以解決一個給我的問題: (13,5),(9,5)...變成一個變量。

感謝很多:)

+0

你能張貼$ _ POST? –

+0

你是什麼意思「發佈$ _POST」 – Ingo

+0

向我們展示發佈表單後$ _POST包含的內容。 –

回答

2

您不必建立所有INSERTS單串簡單的,而你是循環插入。

例如:

$sql = "INSERT INTO user_groups (usergroup, userid) VALUE (:usergroup, :userid)"; 
$stmt = $pdo->prepare($sql); 
foreach ($_POST['del'] as $pval) { 
    $stmt->execute(array(':usergroup'=>(int) $pval, 
         ':userid'=>$_POST['userid'] 
    )); 
} 
+2

對於OP:這裏的好處是準備好的語句很快就可以用新參數重新執行。 – Devon