gpt4 book ai didi

javascript - 如何使用 AJAX post 方法从 PHP 的特定函数中检索 JSON

转载 作者:行者123 更新时间:2023-12-03 06:50:04 25 4
gpt4 key购买 nike

好吧,这就是我现在面临的问题

实际上我已经在php中成功访问了JSON,但是有一个条件,没有定义特定的函数,现在我需要从特定的PHP函数访问JSON

这就是我的 php 的样子

<?php

if(isset($_GET['func']))
{
if($_GET['func'] == "add")
addVisitor();
}
elseif(!empty($_POST['func']))
{
if($_POST['func']=="retrieve"
getData()
}

function addvisitor()
{
$servername = "localhost";
$username = "root";
$password = "@123";
$dbname = "numberofvisit";
// Create connection
$conn = new mysqli($servername, $username, $password, $dbname);
// Check connection
if ($conn->connect_error) {
die("Connection failed: " . $conn->connect_error);
}

$sql = "UPDATE visitor SET count = count +1 WHERE idvisitor = 1 ";

if ($conn->query($sql) === TRUE) {
echo "New record created successfully";
} else {
echo "Error: " . $sql . "<br>" . $conn->error;
}

$conn->close();
}

function getData(){
$servername = "localhost";
$username = "root";
$password = "@123";
$dbname = "rating";

// Create connection
$conn = new mysqli($servername, $username, $password, $dbname);
// Check connection
if ($conn->connect_error) {
die("Connection failed: " . $conn->connect_error);
}


$sql = "SELECT avg FROM feedback WHERE idoveralRating=1";
$result = $conn->query($sql);

$pass=mysqli_fetch_assoc($result);

echo json_encode($pass["avg"]);

$conn->close();
}
?>

Here is My Javascript

好吧,所以我尝试向服务器发送请求以运行特定功能,通过发送 func=retrieve 到 addVisit.php,然后在运行该功能后,我捕获服务器回显的 JSON,但似乎没有'没有像我预期的那样工作,这是该部分不适合我的代码

var req = new XMLHttpRequest();
req.open("POST", "addVisit.php", true);
req.send("func=retrieve");
var jsonObject = JSON.parse(req.responseText);

那么如何使用ajax在PHP的特定函数中访问JSON?

最佳答案

PHP 的函数名称区分大小写。您尝试调用 addVisitor()

...

if($_GET['func'] == "add")
add**V**isitor();
}

...

但是您定义的函数名称是:

function add**v**isitor()

这会导致问题

对于调试 javascript 也非常有帮助,那就是使用开发者工具包,通常在浏览器中默认使用(例如 Chrome 或 Opera 默认有它)您可以转储您的 javascript 变量、调用、返回并通过使用类似这样的内容扩展来调试它们

console.log(variable_name_goes_here)

关于javascript - 如何使用 AJAX post 方法从 PHP 的特定函数中检索 JSON,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37543583/

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