好吧,这就是我现在面临的问题
实际上我已经在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();
}
?>
好吧,所以我尝试向服务器发送请求以运行特定功能,通过发送 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/