Closed. This question needs to be more focused。它当前不接受答案。
                            
                        
                    
                
            
                    
                
                        
                            
                        
                    
                        
                            想改善这个问题吗?更新问题,使其仅通过editing this post专注于一个问题。
                        
                        2年前关闭。
                    
                
        

我得到这个数组结果,并将其存储在变量中。在这种情况下,我如何将其存储到数据库中。

服务器端语言-PHP
数据库-phpmysql

我想将数组结果值发送到数据库以存储值。值来自[“ 16”,......,“ 1”]

我使用的脚本

$(".test_btn").click(function(){
     alert('submit-btn');
     var test1 = $(this).closest('tr').find(".evaluator-input").map(function() {
                return $(this).val();
     });
     console.log(test1);
});


数组结果

a.fn.init(17) ["16", "1", "Test", "test@gmail.com", "Test", "11", "22", "33", "44", "55", "66", "77", "88", "99", "00", "1", "1", selector: "", prevObject: a.fn.init(17), context: button.test_btn]

最佳答案

首先,您需要将其发送到PHP,U可以使用AJAX,请参见示例here。之后,您可以使用serialize方法将其发送到数据库,您可以了解有关该here的更多信息

您也可以像从js代码中的字符串一样发送它:

var test1 = $(this).closest('tr').find(".evaluator-input").map(function() {
            return $(this).val();
 });
var jsonString = JSON.stringify(test1);
   $.ajax({
        type: "POST",
        url: "script.php",
        data: {data : jsonString},
        cache: false,

        success: function(){
            alert("OK");
        }
    });


现在在PHP中(script.php或文件名),您可以使用var_dump($_POST['data']);查看您的数据,然后将其发送到MySQL,您可以使用PDO进行此工作,如下所示:

<?php
$dbhost = "localhost";
$dbname = "yourdbname";
$dbusername = "yourusername";
$dbpassword = "yourpassword";

$link = new PDO("mysql:host=$dbhost;dbname=$dbname", $dbusername, $dbpassword);

$statement = $link->prepare("INSERT INTO tablename(data)
    VALUES(:data)");
$statement->execute(array(
    "data" => $_POST['data'],
));


当然,您将不得不为表和列更改INSERT query。在这种情况下,最好使用key - value列,然后再使用SELECT query作为键。另外,在查询之前检查$_POST['data'];是否已经发送并且不为空也是一个好主意。

07-26 06:45
查看更多