【问题标题】:How to POST js Table cell values to PHP and INSERT to MYSQL database如何将 js 表单元格值发布到 PHP 并插入到 MYSQL 数据库
【发布时间】:2020-05-08 21:41:32
【问题描述】:

我有一个动态 HTML 表,我只是使用 JavaScript 调用 id,循环数据并捕获单元格值。

问题 - 我如何将这些数据发布到测试 save.php 页面以将整个表插入到我的 MySQl db 中?

    var table = document.getElementById('table'), 
    rows = table.getElementsByTagName('tr'),
    i, j, cells, OS_d,roleApp_d,Men_d,vcpu_d,Val_d,Per_d,hw_d ;

    for (i = 1, j = rows.length; i < j; ++i) {
    cells = rows[i].getElementsByTagName('td');
    if (!cells.length) {
    continue;
    }

    OS_d = cells[1].firstChild.value;
    roleApp_d = cells[2].firstChild.value;
    vcpu_d = cells[3].firstChild.value;
    Men_d = cells[4].firstChild.value;
    Val_d = cells[5].firstChild.value;
    Per_d = cells[6].firstChild.value;
    hw_d = cells[7].firstChild.value;

    }

--- 需要帮助的部分

    $.ajax({
    type: "POST",
    url: 'Save.php',
    data: ({data:OS_d, roleApp_d, vcpu_d, Men_d, Val_d, Per_d, hw_d}),
    success: function(data) {
    alert(data);
    }
    });

PHP端Save.php

    <?php
    $test = $_POST['data'];
    echo $test;
    ?>

【问题讨论】:

  • 这里没有 PHP 代码,不清楚你在问什么。发布你的 save.php 的内容并描述什么不起作用。
  • AJAX 可能就是你所需要的
  • 你已经有了数据。现在您需要使用 AJAX 或 Fetch API 提交它。
  • @CaduDeCastroAlves 我会尝试的。我只是一直在尝试 Ajax,但它没有成功,我真的不知道该怎么做。您可以提供的任何示例步骤
  • 如果您的 AJAX 代码“不起作用”,请向我们展示代码(以及您发送数据的 PHP 代码),并更具体地解释您遇到的问题。然后我们可以实际帮助您,而不仅仅是提出建议。

标签: javascript php mysql json ajax


【解决方案1】:
Just quick code, not tested it so your post data should be like this:
    var table = document.getElementById('table'),
    rows = table.getElementsByTagName('tr'),
    i, j, cells, OS_d,roleApp_d,Men_d,vcpu_d,Val_d,Per_d,hw_d ;

    var p_row = '[';
    for (i = 1, j = rows.length; i < j; ++i) {
       cells = rows[i].getElementsByTagName('td');
       if (!cells.length) {
          continue;
       }

        p_row += "{";
        p_row +='"OS_d":"'+cells[1].firstChild.value+'",';
        p_row +='"roleApp_d":"'+ cells[2].firstChild.value+'",';
        p_row +='"vcpu_d":"'+ cells[3].firstChild.value+'",';
        p_row +='"Men_d":"'+ cells[4].firstChild.value+'",';
        p_row +='"Val_d":"'+ cells[5].firstChild.value+'",';
        p_row +='"Per_d":"'+ cells[6].firstChild.value+'",';
        p_row +='"hw_d":"'+ cells[7].firstChild.value+'"';
        p_row += '},';

    }
    p_row = (p_row).replace(new RegExp("[,]+$"), "");
    p_row += ']';

   var formData = new FormData();
   formData.append('data',p_row);
   fetch("/save.php", {
            method: "POST",
            body: formData
        }).then(function (response) {
            console.log(response);

        }).catch(function (error) {
            console.error(error, "code: " + error.status);
   }); 

【讨论】:

    【解决方案2】:

    我想通了,所以我决定分享给社区。感谢您的支持。

       $.ajax({
        type: "POST",
        url: 'test.php',
        data: {p_row  : p_row },
        success: function(data){
            alert(data);
        }
        });
        }
    
        On the test.php side
    
        <?php
    
        $data = false;
        if(isset($_POST['p_row'])){
            $data  = $_POST['p_row'];
        }
    
        echo 'Received Data: ' . $data ;
        //$conn->close();
        ?>
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2020-02-23
      • 1970-01-01
      • 2013-02-01
      • 2012-05-17
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多