首页 > 解决方案 > 向 PHP/MySQL 表单添加复选框选项

问题描述

我有以下表格

<body>
    <div class="container">
        <div class="title pull-left"><img src="http://www.isfin.ro/images/institutul_de_studii_financiare_ISF.png" width="145px" height="80px" /></div>
        <div class="title pull-right"><h1>Actualizare newsletter</h1></div>
     </div>
    <hr class="featurette-divider"></hr>
<div class="container">
    <div class="col-sm-12">
        GDPR text goes here
    </div>
    <div class="form-group">
    <label for="email">Email:</label>
        <input id="email" class="form-control" type="email" placeholder="Adresa Email">
    </div>
    <div class="form-group">
    <label for="nume">Nume:</label>
        <input id="nume" class="form-control" type="text" placeholder="Nume">
    </div>
    <p>Want to remain subscribed?</p>
    <label class="radio-inline">
      <input type="radio" name="optradio" value="yes">Yes
    </label>
    <label class="radio-inline">
      <input type="radio" name="optradio" value="no">No
    </label>
    <br><br>
<button type="submit" id="submit" class="btn btn-default btn-block btn-primary">Trimite</button>
<div id="display"></div>

<script>
$(document).ready(function(){
$("#submit").click(function(){
var em = $("#email").val();
var sub = $("#nume").val();
var com = $("#comments").val();
var dataString = 'em1='+ em + '&sub1='+ sub + '&com1='+ com;
if(em==''||sub==''||com=='')
{
$("#display").html("<div class='alert alert-warning'>Please Fill All Fields.</div>");
}
else
{
$.ajax({
type: "POST",
url: "processor.php",
data: dataString,
cache: false,
success: function(result){
$("#display").html(result);
}
});
}
return false;
});
});
</script>
</div>
</body>

这是processor.php的内容

<?php
include_once('config.php');
$email=mysqli_real_escape_string($con, $_POST['em1']);
$emailclean = filter_var($email, FILTER_SANITIZE_EMAIL, FILTER_FLAG_STRIP_HIGH);
$sub=mysqli_real_escape_string($con, $_POST['sub1']);
$subclean = filter_var($sub, FILTER_SANITIZE_STRING, FILTER_FLAG_STRIP_HIGH);
//insert into database
mysqli_query($con,"INSERT INTO contact(`email`, `nume`)VALUES('$emailclean','$subclean')");
//send message back to AJAX
echo '<div class="alert alert-success">Preferintele au fost actualizate.</div>';
$con->close();
?>

如何将单选按钮 Yes / No 的内容插入数据库字段?我的数据库具有以下结构 id、email、nume、subscription_status,我需要将单选按钮中的值插入到 subscription_status 中(是或否值)。

谢谢!

标签: phpmysql

解决方案


获取选中复选框的值:

var data = document.querySelector('input[name="optradio"]:checked').value;

现在将此值添加到您通过 ajax 发送的数据字符串中:

var dataString = 'em1='+ em + '&sub1='+ sub + '&com1='+ com + '&radio=' + data;

并在 PHP/服务器端获取值:

$radio_value = $_POST['radio'];


推荐阅读