[mysql]提交与两个操作按钮

标签: jQuery MySQL PHP
发布时间: 2017/4/8 21:14:18
注意事项: 本文中文内容可能为机器翻译,如要查看英文原文请点击上面连接.

我有修改的表 'wp_postmeta' 元内容的形式。 我试图想出办法,将窗体结果添加到另一个表 (交易)。

我有安装 php 并且它如果从提交输入部分中删除的"id"值。 与 ID 包括,窗体修改 wp_postmeta 但没有数据被发送到"交易"表。 没有 ID 包括,相反。 有何建议?

窗体提交按钮︰

<div class='inventory-management-form-item-holders inventory-management-submit-holder'>
    <input type="submit" name="submit" value="SUBMIT" id="im-submit">
</div>

"im-提交"js 节︰

// submit form
jQuery("#im-submit").click(function(){
    // Change thw loading Gif url 
    jQuery('#the-results-holder').html("<img src='/wp-content/plugins/mcs-inventory-management/assets/images/loading_icon.gif' />");
    jQuery.ajax({
        type: "POST",
        data: {'im-product-id': theProductId, 'status-quantity': jQuery('#status-quantity').val(), 'status-action': jQuery('#im-action-box').val(), 'status-location': jQuery('#status-location').val(), 'status-move-location': jQuery('#status-move-location').val()},
        dataType: "json",
        url: "/inventory-management-process/",
        processData: true,
        success: function(data) {
            jQuery('#the-results-holder').html(""); 
            jQuery('#status-stock').val(data.stock);
            jQuery('#status-res').val(data.res);
            jQuery('#status-prepro').val(data.prepro);
            jQuery('#status-clean').val(data.clean);
            jQuery('#status-quantity').val("0");
        },
        error: function (xhr, ajaxOptions, thrownError) {
            jQuery('#the-results-holder').html(""); 
            jQuery('#the-results-holder-error').html("There has been an error!"); 
        }
    });
    return false;
});

PHP 使用插入查询的"事务"表

<form name='inventory-management' id='inventory-management-form' method="POST" action='<?php $transaction ?>'>


<?php
$product= $_POST['part-number'];
$action= $_POST['status-action'];
$from_location= $_POST['status-location'];
$to_location= $_POST['status-move-location'];
$qty= $_POST['status-quantity'];


if(isset($_POST['submit']))
{
 $transaction = "INSERT INTO transactions (id,product,action,from_location,to_location,qty) VALUES ('','$product','$action','$from_location','$to_location','$qty')";
 $result = mysql_query($transaction);
}
?>

解决方法 1:

如果您删除"id"值,从提交输入部分因为提交表单时,浏览器并不是由你的 js 代码,效果,然后 submit 值是在 $_POST

使你你需要添加的 jQuery 代码作品 submit 值后,就像这样︰

    // submit form
jQuery("#im-submit").click(function() {
    // Change thw loading Gif url 
    jQuery('#the-results-holder').html("<img src='/wp-content/plugins/mcs-inventory-management/assets/images/loading_icon.gif' />");

    var ajax_config = {
        type: "POST",
        data: {
            'submit': 'submit',  
            'im-product-id': theProductId, 
            'status-quantity': jQuery('#status-quantity').val(), 
            'status-action': jQuery('#im-action-box').val(), 
            'status-location': jQuery('#status-location').val(), 
            'status-move-location': jQuery('#status-move-location').val()
        },
        dataType: "json",
        url: "/inventory-management-process/",
        processData: true,
        success: function(data) {
            jQuery('#the-results-holder').html("");
            jQuery('#status-stock').val(data.stock);
            jQuery('#status-res').val(data.res);
            jQuery('#status-prepro').val(data.prepro);
            jQuery('#status-clean').val(data.clean);
            jQuery('#status-quantity').val("0");
        },
        error: function(xhr, ajaxOptions, thrownError) {
            jQuery('#the-results-holder').html("");
            jQuery('#the-results-holder-error').html("There has been an error!");
        }
    };
    jQuery.ajax(ajax_config);//jajax # 1

    //change the url
    ajax_config.url = jQuery('#inventory-management-form').attr("action");

    jQuery.ajax(ajax_config);//jajax # 2

    return false;
});

编辑︰

我认为您要发布到两个不同的位置,这就是为什么没有 ID,它添加表单结果到交易记录表和具有 ID,它将更新 wp_postmeta 表。你应该尝试使用 ID,和在 jQuery 代码中,使 2 ajax 调用,就像你有一个,另一个对窗体操作值更改 url。

'url': jQuery('#inventory-management-form').attr("action")
赞助商