Php 如何使用AJAX将值传递到数据库

Php 如何使用AJAX将值传递到数据库,php,jquery,ajax,Php,Jquery,Ajax,我试图使用AJAX将某些值传递到数据库中。使用我的当前脚本,PHP检查提交按钮并处理表单。这是数据库中的标准表单条目,但这不是问题所在,我表单中的元素不是表单值,而是div中的文本,我正试图使用AJAX将其传递到数据库中,但我不完全确定如何执行此操作。我不需要PHP方面的帮助,这就是我不发布它的原因,我只需要帮助执行AJAX以获取所选值并将其传递到数据库中 var Alerts = { apu: [["APU Power Fail", "APU[1]"], ["APU Power

我试图使用AJAX将某些值传递到数据库中。使用我的当前脚本,PHP检查提交按钮并处理表单。这是数据库中的标准表单条目,但这不是问题所在,我表单中的元素不是表单值,而是div中的文本,我正试图使用AJAX将其传递到数据库中,但我不完全确定如何执行此操作。我不需要PHP方面的帮助,这就是我不发布它的原因,我只需要帮助执行AJAX以获取所选值并将其传递到数据库中

var Alerts = {
        apu: [["APU Power Fail", "APU[1]"], ["APU Power Fault", "APU[2]"], ["APU Generator Fail", "APU[3]"], ["APU High Oil Temperature", "APU[4]"], ["APU Hot Start", "APU[5]"], ["APU Loss Overspeed Protection", "APU[6]"], ["APU Starter Engaged", "APU[7]"], ["APU Fire", "APU[8]"], ["APU Fails Bite Check", "APU[9]"], ["APU Door Fails to Open", "APU[10]"], ["APU No Flame", "APU[11]"], ["Left Fire Bottle Discharge", "APU[12]"]],

        avionics: [["ADS 1 Fail", "AVIONICS[1]"], ["ADS 2 Fail", "AVIONICS[2]"], ["ADS 3 Fail", "AVIONICS[3]"], ["AP 1 Fail", "AVIONICS[4]"], ["AP 2 Fail", "AVIONICS[5]"], ["Autopilots Fail", "AVIONICS[6]"], ["Baroset 1 Fail", "AVIONICS[7]"], ["Baroset 2 Fail", "AVIONICS[8]"], ["Baroset 3 Fail", "AVIONICS[9]"], ["CCD 1 Fail", "AVIONICS[10]"], ["CCD  2 Fail", "AVIONICS[11]"], ["Heading Comparison Monitor", "AVIONICS[12]"], ["Heading and Roll Comparison Monitor", "AVIONICS[13]"], ["Display Controller 1 Fail", "AVIONICS[14]"], ["Display Controller 2 Fail", "AVIONICS[15]"], ["IRS 1 Fail", "AVIONICS[16]"], ["IRS 2 Fail", "AVIONICS[17]"], ["IRS 3 Fail", "AVIONICS[18]"], ["Glideslope Antenna Fail", "AVIONICS[19]"], ["MAU 1A Fail", "AVIONICS[20]"], ["MAU 1B Fail", "AVIONICS[21]"], ["MAU 2A Fail", "AVIONICS[22]"], ["MAU 2B Fail", "AVIONICS[23]"], ["MAU 3A Fail", "AVIONICS[24]"], ["MAU 3B Fail", "AVIONICS[25]"], ["MRC 1 Fail", "AVIONICS[26]"], ["MRC 2 Fail", "AVIONICS[27]"], ["GPS Degrade", "AVIONICS[28]"], ["GPS #1 Fail", "AVIONICS[28]"], ["GPS #2 Fail", "AVIONICS[30]"], ["Display Unit 1 Fail", "AVIONICS[31]"], ["Display Unit 2 Fail", "AVIONICS[32]"], ["Display Unit 3 Fail", "AVIONICS[33]"], ["Display Unit 4 Fail", "AVIONICS[34]"], ["GPS - Unable RNP", "AVIONICS[35]"]]
    }
    var description, breaker;
    for(var key in Alerts){
        var system = key.toUpperCase();
        $("#systems").append("<div class='systems' id='" +key +"'><div class='select_box'></div><h2>" +system +"</h2></div>");
    }
    $("#systems").on("click", ".systems", function(){
        $("#malfunctions").children().remove();
        $(this).find(".select_box").each(function(){
            $(".selected").removeClass("selected");
            $(this).addClass("selected");
        })
        $.each(Alerts[this.id], function(ind,item){
            description = item[0];
            breaker = item[1];
            $("#malfunctions").append("<div class='systems'><div class='select_box'></div><p data-id='" +description +"'>" +description +"</p></div>");
        })
    })
    $("#malfunctions").on("click", ".systems", function(){
        $(this).find(".select_box").each(function(){
            if($(this).hasClass("selected")){
                $(this).removeClass("selected");
            }
            else{
                $(this).addClass("selected");
                var text = $(this).closest(".systems").text();
            }
        })
    })
var警报={
apu:[“apu电源故障”、“apu[1]”、[“apu电源故障”、“apu[2]”、[“apu发电机故障”、“apu[3]”、[“apu油温高”、“apu[4]”、[“apu热启动”、“apu[5]”、[“apu失电超速保护”、“apu[6]”、[“apu启动器启动”、“apu[7]”、[“apu起火”、“apu[8]”、[“apu咬口检查失败”、“apu[9]”、[“apu门无法打开”、“apu[10]”、],[“APU无火焰”、“APU[11]”]、[“左火瓶排放”、“APU[12]”],
航空电子设备:[“ADS 1故障”、“航空电子设备[1]”、[“ADS 2故障”、“航空电子设备[2]”、[“ADS 3故障”、“航空电子设备[3]”、[“AP 1故障”、“航空电子设备[4]”、[“AP 2故障”、“航空电子设备[5]”、[“自动驾驶仪故障”、“航空电子设备[6]”、[“气压表1故障”、“航空电子设备[7]”、[“气压表2故障”、“航空电子设备[8]”、[“气压表3故障”、“航空电子设备[9]”、[“CCD 1故障”、“航空电子设备[10]”)[“CCD 2故障”、“航空电子设备[11]”、[“航向比较监视器”、“航空电子设备[12]”、[“航向和滚转比较监视器”、“航空电子设备[13]”、[“显示控制器1故障”、“航空电子设备[14]”、[“显示控制器2故障”、“航空电子设备[15]”、[“IRS 1故障”、“航空电子设备[16]”、[“IRS 2故障”、“航空电子设备[17]”、[“IRS 3故障”、“航空电子设备[18]”、[”下滑道天线故障、“航空电子设备[19]”、[“MAU 1A故障”、“航空电子设备[20]”、[“MAU 1B故障”、“航空电子设备[21]”、[“MAU 2A故障”、“航空电子设备[22]”、[“MAU 2B故障”、“航空电子设备[23]”、[“MAU 3A故障”、“航空电子设备[24]”、[“MAU 3B故障”、“航空电子设备[25]”、[“MRC 1故障”、“航空电子设备[26]”、[“MRC 2故障”、“航空电子设备[27]”、[“GPS降级”、“航空电子设备[28]”、“)GPS 1故障、“航空电子设备[28]”、[“GPS 2故障”、“航空电子设备[30]”、[“显示单元1故障”、“航空电子设备[31]”、[“显示单元2故障”、“航空电子设备[32]”、[“显示单元3故障”、“航空电子设备[33]”、[“显示单元4故障”、“航空电子设备[34]”、[“无法使用GPS的RNP”、“航空电子设备[35]”
}
var描述,断路器;
用于(var输入警报){
var system=key.toUpperCase();
$(“#系统”)。追加(“+system+”);
}
$(“#系统”)。在(“单击”,“系统”,函数()上){
$(“#故障”).children().remove();
$(this).find(“.select_框”).each(function(){
$(“.selected”).removeClass(“selected”);
$(此).addClass(“选定”);
})
$.each(警报[this.id],函数(索引,项){
description=项目[0];
断路器=项目[1];
$(“#”)追加(““+description+”

”); }) }) $(“#故障”)。在(“单击”,“系统”,函数()上){ $(this).find(“.select_框”).each(function(){ if($(this).hasClass(“选定”)){ $(此).removeClass(“选定”); } 否则{ $(此).addClass(“选定”); var text=$(this).closest(“.systems”).text(); } }) })
右侧带有红色框的div是我要传递到数据库中的选定项。
您可以这样做:

...

var data = '';
$('.selected').each(function(){
    data += $(this).parent().children('p').attr('data-id') + ',';
})
然后

$.ajax({
    type: "POST",
    url: "some.php",
    data: { values: data }
})
.done(function( msg ) {

});

这只是一种方式,不是复制和粘贴的代码;)

您需要在元素中循环并将其文本设置为数组,然后您可以通过对象传递数据,并通过PHP POST将其作为值数组轻松处理:

jQuery(document).ready(function($) {

  var data_values = [];

  $("#malfunctions > .selected").each(function(index, el) {
     data_values[index] = el.innerText;
  });

  $.ajax({
     url: '/path/to/file',
     type: 'POST',
     dataType: 'json',
     data: {myData: data_values}
  })
});

你的PHP在哪里?我在这里也没有看到任何AJAX。这就是我要问的,我如何使用AJAX来传递这个脚本以将数据放入数据库。这就解释了。想出一些东西,我们可以帮助你解决一些具体的问题。这也会很有帮助。谢谢你的资源。希望我明天能发布更多的东西w、 修复:已更改
{myData:data}
正确的值为
{myData:data\u values}