ajax传多个数组到php,javascript - 通过jQuery AJAX将PHP中的多个数组传递给Javascript - 堆栈内存溢出...

本文探讨了如何使用jQuery的AJAX从PHP获取数据,将接收到的AnswerTitle和AnswerText数组编码并传递回JavaScript。作者寻求解决如何在JavaScript函数中有效利用这些数组的问题。
摘要由CSDN通过智能技术生成

我正在尝试做的是:

我试图通过jQuery的AJAX函数将按下按钮的ID传递给我的PHP脚本。 然后,我使用该信息来运行返回两行的查询,将每行分别保存为数组$rTitle_array[]和$qTitle_array[] ,对每个json_encode $qTitle_array[] ,然后将它们发送回index.html并使用他们在我的generateProblems函数中。

可悲的是,我无法弄清楚如何将它们传递回去,然后再使用它们。

这是我的JavaScript:

$(function() {

//Take id of the button pressed and save it as userID

$("#buttons").find(".btn").click(function() {

var userID = this.id;

$.ajax({

type: "POST",

url: 'include/responseget.php',

data: {

userID: userID

},

success: function(data) {

alert("success!");

}

});

});

var phase = 0;

var rTitle = <?php echo json_encode($rTitle_array); ?>;

var rText = <?php echo json_encode($rText_array); ?>;

//Function to generate html based on query results

function generateProblems(param) {

var problemDef = param;

$("#buttons").hide();

var numbers = [1, 2, 3, 4, 5, 6, 7, 8];

for (var i = 0; i < 8; i++) {

$('

' + rTitle[i] + '
').data('number', rTitle[i]).attr('id', 'problem' + rTitle[i]).appendTo('#testpile').draggable({

containment: '.site-wrapper',

stack: '#testpile div',

cursor: 'move',

revert: true

});

$('

' + rText[i] + '
').data('number', rText[i]).attr('id', 'problem' + rText[i]).appendTo('#testpile');

}

$('#testdrop').droppable({

drop: handleDropEvent,

accept: '#testpile div'

});

//Function to restart generateProblems when draggable is dragged to specific place

function handleDropEvent(event, ui) {

var problemNumber = ui.draggable.data('number');

var problemCombination = problemDef + problemNumber;

ui.draggable.draggable('disable');

ui.draggable.draggable('option', 'revert', false);

phase++;

alert('ProblemCombination is "' + problemCombination + '", phase is "' + phase + '" ');

$("#testpile").children().hide();

generateProblems(problemCombination);

}

}

});

这是我的PHP:

if(isset($_POST['userID'])){

$id = $_POST['userID'];

$stmt = $conn->prepare("SELECT DISTINCT AnswerTitle, AnswerText FROM question_answers

INNER JOIN question

ON question_answers.QuestionID=question.QuestionID

INNER JOIN answer

ON question_answers.AnswerID=answer.AnswerID

WHERE AnswerGroup = ?;");

$stmt->bind_param('s', $id);

$stmt->execute();

$result = $stmt->get_result();

while($row = $result->fetch_assoc())

{

$rTitle_array[] = $row['AnswerTitle'];

$rText_array[] = $row['AnswerText'];

}

echo json_encode($rTitle_array);

echo json_encode($rText_array);

}

// close connection

mysqli_close($conn);

?>

我只是不知道如何正确获取或将数组传递回我的JavaScript,因此可以将它们用于函数。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值