插入enum数据类型列的查询..从所选复选框中获取值

时间:2014-09-20 12:35:21

标签: php mysql enums

  

您好,

     

我有一个电子邮件订阅表,我们在其上输入电子邮件地址和订户想要优惠券的一组类别。   类别如旅游,礼品,电子产品,食品,健康和美容等。在表单上,​​这些类别使用​​复选框放置。用户检查它们,并且必须只获得与类别相关的优惠券。

我使用了' enum'用于保存这些类别列表的数据类型;使用枚举编辑器设置列表;将复选框值更改为受尊重的类别名称,但现在卡在插入查询上。 或者是他们任何其他有效的观察员。

  

等待.. thanx    



<div class="InputOuterDiv">
<div class="EnquiryInpTitle"><strong>Enter Email Address:</strong></div>
<div class="EnquiryInputBox">
<input name="" type="text" class="EnquiryInput" />
</div>
</div>
<div class="InputOuterDiv">
<div class="CategoryLabelTitle"><strong>Select  Category:</strong></div> 
<div class="CategoryTitle"><input type="checkbox" value="Travel" />  Travel</div>
<div class="CategoryTitle"><input type="checkbox" value="Shopping" /> Shopping</div>
<div class="CategoryTitle"><input type="checkbox" value="Electronics" /> Electronics</div>
<div class="CategoryTitle"><input type="checkbox" value="Entertainment" /> Entertainment</div>
<div class="CategoryTitle"><input type="checkbox" value="Food" /> Food & Drink </div>
<div class="CategoryTitle"><input type="checkbox" value="Gift" /> Gift flowers</div>
<div class="CategoryTitle"><input type="checkbox" value="Health"/> Health & Beauty</div>
 
&#13;
&#13;
&#13;  

1 个答案:

答案 0 :(得分:0)

您需要在复选框中提供名称,例如

<input type="checkbox" name="datatypes[]" value="travel" />

......等等。

这将为您提供一个提交数组,其中包含所单击的每个值。

您将无法使用enum字段表示这些值,因为您无法控制选择哪个值组合。在将数组值插入表格之前,最好使用varchar字段和join()数组值。

<?php 
$dt = $_GET["datatypes"];  // this will be an array....
// check your array like this...
print "<pre>".print_r($dt,true)."</pre>";
// now insert it.
$query = "insert into my_table (datatypes) values ('".join(',',$dt)."')";
mysql_query($query);
?>