gpt4 book ai didi

javascript - 使用 JavaScript 发送 HTTP 请求

转载 作者:行者123 更新时间:2023-11-28 07:52:21 25 4
gpt4 key购买 nike

所以我有一个像这样的 JavaScript 函数,

var ajax = function(data, url, method, onfinish){
var xmlhttp=new XMLHttpRequest();
xmlhttp.onreadystatechange=function()
{
if (xmlhttp.readyState==4 && xmlhttp.status==200)
{
onfinish(xmlhttp.responseText);
}
};
xmlhttp.open(method, "pages/page.php?cv=1", true);
xmlhttp.send("cv=1");
};

我有一个应该运行该函数的空链接,

<a href="javascript:void(0)" onclick="ajax('cv=1', 'pages/page.php', 'POST', set)" class="link">Posts</a>

这是我的 php 文件,

<?php
$cv = $_POST["cv"];
if ($cv == "p1") {
include("posts.php");
} else if ($cv == "p2") {
include("users.php");
} else if ($cv == "p3") {
include("write.php");
} else if ($cv == "p4") {
include("signup.php");
}
?>

但我不断收到此错误,

注意:未定义索引:第 2 行/home/cabox/workspace/pages/page.php 中的 cv

最佳答案

如果您要使用POST,您需要添加:

xmlhttp.setRequestHeader("Content-type", "application/x-www-form-urlencoded");

所以你的函数将是:

var xmlhttp = new XMLHttpRequest();
xmlhttp.open(method, url, true);
xmlhttp.setRequestHeader("Content-type", "application/x-www-form-urlencoded");

xmlhttp.onreadystatechange = function() {
if (xmlhttp.readyState == 4 && xmlhttp.status == 200) {

}
}

xmlhttp.send(data);

然后在 PHP 中:

if(isset($_POST['cv'])) {
$cv = $_POST["cv"];
if ($cv == "1") {
include("posts.php");
} else if ($cv == "2") {
include("users.php");
} else if ($cv == "3") {
include("write.php");
} else if ($cv == "4") {
include("signup.php");
}
}

关于javascript - 使用 JavaScript 发送 HTTP 请求,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26622343/

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