0

我在提交时将 JS 对象发布到 PHP 页面然后将其存储到 mySQL 数据库中时遇到问题。

这是脚本:

var idToDb = [];
var nameToDb = [];
var friendToDb ={};
$('.btn-add').click(function(e){
    e.preventDefault();
    $(this).toggleClass('btn-info btn-success');
    $(this).toggleClass('friend-selected');
    $(this).html($(this).html() == "Selected" ? "Add" : "Selected");         
    addOrRemove(idToDb, $(this).parent().data('id'));
    addOrRemove(nameToDb, $(this).parent().data('name'));
    friendToDb = _.object(idToDb, nameToDb)

我想在单击提交按钮后使用 post 将此数组“friendToDb”发布到单独的 PHP 页面,然后将其存储在 mySQL 数据库中。

这是我试图在 PHP 中发布的内容:

<form method="post" action="friend_input.php">
    <div id="submitBtnRow" class="row top-plus">
      <div class="col-md-12">
        <div class="form-group">
          <input type="submit" id="submitBtn" class="btn btn-info btn-lg btn-block" value="SUBMIT">Submit</a>
        </div>
      </div>
    </div><!-- /submitBtnRow -->
</form>

然后在friend_input.php中,我试图获取friendToDb并存储在mySQL 数据库中,但我不知道该怎么做。

请告诉我应该如何做到这一点。

谢谢你。

4

2 回答 2

1

制作form action=""并使用 ajax 将您的对象传递给 php:

$.ajax({
url:"friend_input.php",
type:"post",
data:{value:JSON.stringify(friendToDb)},   //Converts a JavaScript value to a JavaScript Object Notation (JSON) string.
success:function(result){
// response from php page
}
});

在 php 页面中:

echo json_decode($_POST['value']);  //Takes a JSON encoded string and converts it into a PHP variable.
于 2013-10-14T17:00:07.287 回答
0

将此添加到您的表单中

<input id="friendDb" name="friendDb" type="hidden" />

然后使用使用

$("#friendDb").val();

在发布到脚本之前设置值。

于 2013-10-14T16:54:39.153 回答