我在提交时将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数据库中,我不知道该怎么做。
请告诉我应该怎么做。
谢谢。
答案 0 :(得分:0)
将此添加到表单
<input id="friendDb" name="friendDb" type="hidden" />
然后使用
$("#friendDb").val();
在发布到脚本之前设置值。
答案 1 :(得分:0)
使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.