2011-06-18 55 views
0

Am Newbie.I有這個編碼...如何存儲到Mysql和如何從數據庫中檢索?如何在MYsql中存儲複選框?

<input type="checkbox" name="like" value="yes"/>Yes 
<input type="checkbox" name="like" value="no"/>No 

我懷疑如果我同時選擇2箱意味着會發生什麼? 請解釋...在此先感謝..

+0

只是一個問題,不應該這是一個單選按鈕,而不是複選框。相同複選框的值爲'是'和'否',用戶可以同時選擇這兩個值。通常'是'和'不是'是互斥的。 –

+0

@Aziz:他在問:「如果我同時選擇兩個盒子意味着會發生什麼?」,所以他不知道單選按鈕 – genesis

+0

@genesis對不起,我錯過了那個部分,感謝您清理它 –

回答

2

如果你有逗號分隔值沒有問題

我的回答將幫助你

簡單的使用數組名所在領域

<input type="checkbox" name="like[]" value="yes"/>Yes 
<input type="checkbox" name="like[]" value="no"/>No 

然後implode它用逗號

implode(","$_POST['like']); 

如果被選中兩盒然後 結果將是yes,no

讓你列在VARCHAR 然後做平常的東西來存儲

+0

這是工作正常yaar.Thanks你的幫助。 – Ramkumar

1

yourscript.php:

<?php 
include("mysql_connect.php"); 
if ($_POST['like']) 
{ 
    if ($_POST['like'] != "yes" and $_POST['like'] != "no") die("Hacker"); 
    mysql_query("INSERT INTO likes ('id', 'like') VALUES ('', '".$_POST['like']."')"); 
} 
?> 
<form method="post" action="yourscript.php"> 
<input type="checkbox" name="like" value="yes"/>Yes 
<input type="checkbox" name="like" value="no"/>No 
</form> 

retreive.php:

<?php 
include("mysql_connect.php"); 
$likes = mysql_query("SELECT * FROM likes"); 
while($like = mysql_Fetch_assoc($likes)) 
{ 
    echo "ID ".$like['id']." => ".$like['like']; 
} 

如果選擇這兩個字段,它會保存最新的選擇。 你想收音機(大概)

+0

謝謝成因,你真的是天才.... – Ramkumar

+0

它不會是正確的....首先看到問題從上到下回復...你的建議是錯誤的 – K6t

+0

@ K6t:他只是問什麼會發生,我知道如果他選擇了兩個,它會插入號。所以它沒有錯 – genesis

0

你可能不希望這樣做是擺在首位。你真正想要使用的是單選按鈕是否值。否則,你會遇到問題。

0

你可以使用這樣

<input type="checkbox" name="like[]" value="yes"/>Yes 
<input type="checkbox" name="like[]" value="no"/>No 

在數據庫存儲使用serialize();功能。

unserialize()返回與鍵相同的數組。

相關問題