gpt4 book ai didi

javascript - 我在 session 变量中传递了一个数组。我需要将击键传递给它以返回值

转载 作者:行者123 更新时间:2023-11-30 16:05:49 25 4
gpt4 key购买 nike

我已将 mysql 查询返回的数据存储到 session 变量中。我可以使用 $_SESSION['info'][][] 提取我想要的内容。

我希望能够动态地从数组中检索值。用户将从下拉列表中选择数字(其中 2 个)。其中一个数字需要传递给数组的第一个元素,显然,第二个数字传递给第二个元素。然后,结果回显到屏幕上。

我需要在所有客户端执行此操作。所以像这样:

  • 获取按键a的结果
  • 存储为$a
  • 获取按键b的结果
  • 存储为$b
  • 将结果传递给 echo $_SESSION['info'][$a][$b]

我可以获得一次击键并将其传递给一个变量,甚至可以在我有限的知识下进行第二次击键,但是将它们传递给 session 变量并打印结果我现在无法理解。

enter code here$(document).ready(function() {
$("#pcc").keyup(function() {
var dInput = $(this).val();
$n1=dInput;

//$(".dDimension:contains('" + dInput + "')").css("display","block");
});
});
$(document).ready(function() {
$("#pcp").keyup(function() {
var dInput = $(this).val();
$n2=dInput

//$(".dDimension:contains('" + dInput + "')").css("display","block");
});

});

我知道我一次只能嵌套一个障碍。我知道这样可以节省击键次数。我通过将值传递给警报来测试它。

终于开始了。我正在使用此代码从输入字段传递变量:

     $(document).ready(function(){

$("#pcp").keyup(function(){
var value = $("#pcp").val();
n1= value;

});
$("#pcp").keyup(function(){
var value = $("#pcc").val();
n2= value;

matrix('n1','n2');
});

});

而且我知道它会传递给 matrix() 因为我将变量从矩阵内部转储到控制台,如下所示:

      function matrix(){
// getting values from key presses

//console.log(n1, n2);
$.ajax({
url: "matrix.php",
method: 'GET',
dataType: 'json',
data: { a: n1, b: n2 },
success: function(data) {

var response = data.response;
}

$_SESSION['arrayOfMatrix'][$a][$b]= response;

});

我也知道变量已经传递,因为我在控制台中收到变量未定义错误,但现在我没有。所以 2 积极的事情。然而,这似乎是能够去。我似乎没有得到任何返回。我试过将 console.log 放在 matrix.php 中,但我也没有得到任何东西,所以我猜它只是没有触发并将数据发送到 matrix.php。我可以做任何其他测试来查看它失败的地方吗?我觉得我快搞定了。

};

最佳答案

您需要的是 AJAX。您需要创建一个 PHP 脚本,该脚本将通过 GETPOST 获取 $a$b 的两个值> 要求。然后,您可以使用 jQuery 的 $.ajax 异步调用该脚本并获取结果。

因此,首先您需要一个 PHP 脚本(为了本示例,我们将其称为:example.php)。

example.php 中你可以这样做:

<?php
session_start();
$a = $_GET['var_a'];
$b = $_GET['var_b'];
//do some checking of the two above variables here
$response = array(
'response' => $_SESSION['info'][$a][$b];
);
echo json_encode($response);

如果您更喜欢使用 POST 请求,则可以将 $_POST 替换为 $_GET

下一步涉及相当多的 JavaScript,因此,当您同时填充 $n1 和 $n2 时,您可以使用 $.ajax 发送 POST 请求:

$.ajax({
url: <path-to-example.php>,
method: 'get',
dataType: 'json'
data: { var_a: $n1, var_b: $n2 }
}).done(function(data){
var response = data.response;
//$_SESSION['info'][$a][$b] is now in response
});

同样,在 POST 请求的情况下,您可以将 'get' 替换为 'post'

关于javascript - 我在 session 变量中传递了一个数组。我需要将击键传递给它以返回值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37067279/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com