【发布时间】:2016-05-04 21:38:42
【问题描述】:
我一直在尝试 SO 上给出的所有示例,用于将 jQuery 生成的数组传递给 PHP 以存储在 MySql DB 中,但我在 PHP 端得到的只是“数组”。
我正在为宾果游戏编写代码。我的 jquery 生成一个名为“drawArray”的数组,它应该存储在我的数据库中。示例:
["N37", "G72", "O47", "I43", "N26", "G65", "I62", "N14", "B69", "G67", "I63", "G09", "G01", "G52", "N57", "B42", "N21", "I54", "N21", "N13", "N10", "N01", "N71", "I21", "O01", "G72", "O27", "G32", "O31", "B19", "O34", "I69", "O49", "O29", "G52", "O26", "I34", "I66", "I68", "I60"]
我已经尝试过 ajax、jquery.post,无论哪种方式,我要么在 PHP 方面得到注意,要么只得到“数组”
这是我的 jQuery:
$("#draw").click(function() {
drawNumbers();
console.log(drawArray);
$.ajax({
url: "includes/dealerpicks.php",
type: 'POST',
data: {'drawArray[]' : drawArray},
dataType: "json",
async: false
});
});
在我的 PHP 方面:
//POST Data
$DealerNums = $_POST['drawArray'];
echo $DealerNums . "<br><br>";
$sql="INSERT INTO drawings (dealerPicks)
VALUES
('$DealerNums')";
if (!mysqli_query($conn, $sql))
{
die('Error: ' . mysqli_error($conn));
}
echo "1 record added";
mysqli_close($conn)
?>
当然,我需要将所有这些经销商号码存储到数据库中,以供以后在提取宾果卡时使用。我想我会将它和所有绘图存储到数据库中的一个数组中,以便稍后在我的 PHP 中引用。
为什么我只得到一个值的“数组”?
【问题讨论】:
-
要打印
array,请使用print_r($DealerNums);。我还建议在存储在数据库中时使用数组的json_encode或serialize -
您需要将该数组转换为 JSON。试试
JSON.stringify(drawArray)