2015-01-11 75 views
-1

我創建瞭如此多的複選框。例如:插入數據庫中已檢查的所有值

<input type="checkbox" name="chk_group[]" value="Pharmacist" /><span class="kassem">Pharmacist </span> 
 
<input type="checkbox" name="chk_group[]" value="Police Officer" /><span class="kassem">Police Officer </span> 
 
<input type="checkbox" name="chk_group[]" value="Pottery" /><span class="kassem">Pottery </span> 
 
<input type="checkbox" name="chk_group[]" value="Programming" /><span class="kassem">Programming </span> 
 
<input type="checkbox" name="chk_group[]" value="Puzzles" /><span class="kassem">Puzzles </span> 
 
<input type="checkbox" name="chk_group[]" value="Psychologist" /><span class="kassem">Psychologist </span>

知道用戶被允許檢查,因爲他想盡可能多。知道我知道如何使用PHP回覆選中的複選框。但我想知道如何將它連接到phpmyadmin數據庫中的一行?那麼我知道如何,但數據庫只插入最後檢查的元素的值!我希望它能夠插入所有選中的元素嗎?
這是PHP:

<input type="submit" name="submit" value="Accept" class="hassan" /><br /><br /> 
 
<?php 
 
include "db.php"; 
 
$id = $_SESSION['user_id']; 
 
if (isset($_POST['submit'])) { 
 
    $optionArray = $_POST['chk_group']; 
 
    for ($i=0; $i<count($optionArray); $i++) { 
 
     echo "<div>" ."<span class='kassem'>" . $optionArray[$i]."<br />" . "<br />" . "</span>". "</div>"; 
 
\t \t \t $hobby = $optionArray[$i]; 
 
\t \t \t $sql = "UPDATE `login1` SET `hobby`='$hobby' WHERE `ID`='$id'"; 
 
\t \t \t $res=mysql_query($sql); 
 
\t \t \t if($res) { 
 
\t \t \t echo "connected"; 
 
\t \t \t } else { 
 
\t \t \t echo "bad"; 
 
\t \t \t } 
 
\t \t } 
 
\t \t \t 
 
    } 
 

 
?>

+0

Ihavenoideawhatyouretalkingabout。 – Strawberry

+0

有人知道標點符號的含義嗎? – Neat

+0

請改進您的問題吧,添加您的代碼! – starkeen

回答

0

您作爲記錄的其餘部分storying一列愛好值在同一個表。這隻能保持一個值。

你應該規範你的數據庫。

另外創建兩個表格。

  • 一個持有的hobby所有可能的值(連同主鍵的ID列)
  • junction table其中兩個列都在hobby表和login1表的外鍵。

然後在每個選中的複選框的聯結表中插入一個新條目。

+0

好的,謝謝你的分配,但我有問題要理解。 首先,在第一張桌子上我會寫2列?一個用於id,另一個用於所有業餘愛好的可能值? (對不起,但我是一個初學者。) 秒,login1表我不明白什麼使用login1? –

+0

'login1'是你已經擁有的表格。據推測它包含了一堆關於特定用戶的數據。看看我在答案中鏈接到的聯結表上的維基百科頁面,它有圖表。 – Quentin

+0

好的,謝謝你的分配。 –

相關問題