![](/img/trans.png)
[英]how to insert multiple checkbox values in single column in database using php
[英]Insert multiple values in single column of database using php
我想使用php在數據庫中插入多個復選框值。 但是使用此代碼,它不會插入數據庫中。 請告訴我有什么問題以及解決方法。 現在,當我檢查生物和物理學時,我想將它們添加到數據庫的單列中。
這是HTML部分
<select value="class" class="wp-form-control">
<option value="Select your class" >Select your class</option>
<option value="10th" onclick="myFunction()">10th</option>
<option value="12th" onclick="myFunction1()">12th</option>
</select>
<div id="mydiv" style="display:none">
<input type="checkbox" name="subject[]" value="1">bio<br>
<input type="checkbox" name="subject[]" value="2">phy<br>
<input type="submit" value="Calculate" name="submit" class="wpcf7-submit">
</div>
<div id="mydiv1" style="display:none">
<input type="checkbox" name="subject[]" value="3">maths<br>
<input type="checkbox" name="subject[]" value="4">sciecne<br>
<input type="submit" value="Calculate" name="submit" class="wpcf7-submit">
</div>
這是PHP的一部分
<?php
$host = 'localhost:3306';
$user = 'root';
$pass = '';
$dbname = 'wpf';
$conn = mysqli_connect($host, $user, $pass,$dbname);
if(!$conn){
die('Could not connect: '.mysqli_connect_error());
}
if(isset($_POST['submit'])) {
if(isset($_POST['subject'])) {
$classes=$_POST['subject'];
$c=count($classes);
$price=0;
for($i=0;$i<$c;$i++) {
if($classes[$i]==1) {
$price+=200;
}
if($classes[$i]==2){
$price+=300;
}
if($classes[$i]==3){
$price+=400;
}
if($classes[$i]==4) {
$price+=500;
}
}
$chk="";
foreach($classes as $sub) {
$sub.= $sub.",";
}
if($classes) {
$insert="INSERT INTO feedetails
(subjects,price)
VALUES ('$sub',$price')";
if(mysqli_query($conn,$insert)) {
echo ("<SCRIPT LANGUAGE='Javascript'>
window.alert('Your fee has been updated.Please proceed to pay.');
window.location.href='payment.php';
</SCRIPT>");
}
}
}else{
echo ("<SCRIPT LANGUAGE='Javascript'>
window.alert('Please select atleast one subject to proceed');
</SCRIPT>");
}
}
?>
我嘗試了implode()
函數,但無法正常工作。
您可以在數據庫的不同列中插入值,也可以使用爆破並將值保存到一列中
$_POST['subject']
應該是一個數組。
$subject = implode(',', (array)$_POST['subject']);
$query="INSERT INTO feedetails (subjects,price) VALUES ('".$subject."','".$price."')";
您也可以像這樣通過一個查詢插入多個項目
$query = "INSERT INTO feedetails (subjects,price) VALUES ";
for ($z=0; $z < count($subject); $z++) {
$query .= "('" . $subject[$z] . "','".$price."'),";
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.