Php 使用ajax插入复选框数组

Php 使用ajax插入复选框数组,php,ajax,Php,Ajax,我正在使用复选框创建表单,如下所示: <script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script> <form class="form7" method="POST"> <li> <label for="Produto">Estado Resguardo</label>

我正在使用复选框创建表单,如下所示:

<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<form class="form7" method="POST">
       <li>
        <label for="Produto">Estado Resguardo</label>
        <ul class="flex-outer">
           <div class="form-check">
                <label class="toggle">
                    <input type="checkbox" id="Resguardo1" name="Resguardo[]" value="Cheiro"> <span class="label-text"> Cheiro</span>
                </label>
            </div>
           <div class="form-check">
                <label class="toggle">
                    <input type="checkbox" id="Resguardo2" name="Resguardo[]" value="Deteriorado"> <span class="label-text">Deteriorado</span>
                </label>
            </div>
            <div class="form-check">
                <label class="toggle">
                    <input type="checkbox" id="Resguardo3" name="Resguardo[]" value="Molhado/Sujo"> <span class="label-text">Molhado/Sujo</span>
                </label>
            </div>
    </ul>
  </li>
  <li style="float: right">
    <button type="button" class="btn btn-danger btn7" data-dismiss="modal">Cancelar</button>
    <button class="btn btn-success" onclick="inserir_registo6()">Gravar</button>
  </li>
  </form>
在使用php的脚本中,我有如下内容:

$Colaborador = $_SESSION['usuarioId'];

if (isset($_POST["Resguardo"])) {
    $optionArray = $_POST["Resguardo"];
    $teste = implode(',', $optionArray);
    for ($i=0; $i<count($teste); $i++) {

$query = 'INSERT INTO RegistoResguardos (``Resguardo`, `Colaborador`) VALUES ( ?, ?)';
            $stmt = $conn->prepare( $query );
            $stmt->bind_param("ss", $teste, $Colaborador);
            $stmt->execute();

}

但是我仍然有同样的问题,没有插入到数据库中。

我这样做解决了这个问题:

(function ($) {$(document).ready(function(){ 
$("#form7").submit(function(e){ 

e.preventDefault(); 

var Utente = form7.Utente.value; 
var Quantidade1 = form7.Quantidade1.value; 

if (!Utente) { 
alert('Preencha o campo com o Utente'); 
form7.Utente.focus(); 
return false; 
} 
if (!Quantidade1) { 
alert('Preencha o campo com a Quantidade'); 
form7.Quantidade1.focus(); 
return false; 
} 
   $.ajax({
       type: "POST",
       url: "./registoresguardos",
       data: $("#form7").serialize(), // serializes the form's elements.
       dataType: "json",
       success: function (data)
         {
          $(".success_messages").removeClass('hide'); // success message
         }, 
       error: function(data){
           $(".error_message").removeClass('hide'); // error message
         },
       complete: function()
     { 
           $('.form7')[0].reset();
         } 

    });

 });
});
})(jQuery);

$\u POST[“Resguardo”]不是一个数组,用于阻止
提交表单
type=“button”
添加到按钮
gravar
。这将阻止默认的
type=“submit”
var-dadosajax-should=$(“.form7”).serialize();那么$\u POST[“Resguardo”]将是一个数组,除非没有选中任何复选框
function inserir_registo6()
{  
    var dadosajax = {

        'Resguardo' : $("input[name=Resguardo]").val()
    };
    $.ajax({
        url: './registosobremesa',
        type: 'POST',
        cache: false,
        data: dadosajax,
        error: function(){
         $(".error_message").removeClass('hide');
        },
        success: function(result)
        { 
        $('.form7')[0].reset();
        }
    });
}
(function ($) {$(document).ready(function(){ 
$("#form7").submit(function(e){ 

e.preventDefault(); 

var Utente = form7.Utente.value; 
var Quantidade1 = form7.Quantidade1.value; 

if (!Utente) { 
alert('Preencha o campo com o Utente'); 
form7.Utente.focus(); 
return false; 
} 
if (!Quantidade1) { 
alert('Preencha o campo com a Quantidade'); 
form7.Quantidade1.focus(); 
return false; 
} 
   $.ajax({
       type: "POST",
       url: "./registoresguardos",
       data: $("#form7").serialize(), // serializes the form's elements.
       dataType: "json",
       success: function (data)
         {
          $(".success_messages").removeClass('hide'); // success message
         }, 
       error: function(data){
           $(".error_message").removeClass('hide'); // error message
         },
       complete: function()
     { 
           $('.form7')[0].reset();
         } 

    });

 });
});
})(jQuery);