如何用 ajax 打开你发送数据的文件?
How to open the file where you send the data to with ajax?
我是 ajax 的新手,所以我不确定我是否做对了。
我正在尝试将 Javascript 数组传递给 PHP 文件。如果成功打开 PHP 文件并显示数组。打开文件后出现的错误是:
undefined $productList
同时,如果我检查并查看网络选项卡,ajax 已成功发送并且响应也很好(我可以看到数组的内容),但是当我尝试打开文件时它抛出我的错误。所以我的问题是如何打开一个文件,我用 ajax 将数据发送到该文件?
数组:
array(6) { ["name"]=> string(28) "Inuyasha by rumiko takahashi" ["image"]=> string(35) "https://via.placeholder.com/195x280" ["id"]=> string(1) "5" ["count"]=> string(1) "1" ["price"]=> string(2) "12" ["basePrice"]=> string(2) "12" }
ajax:
function passArray(){
$.ajax({
type: "POST",
url: "assets/js/test.php",
data: {productsInCart:productsInCart},
error: function(){
alert('something went wrong..');
}
});
//window.open("assets/js/test.php", "_self"); //how to open the file where the data is sent?
}
PHP代码:
if($_POST){
$productlist = $_POST;
}else{
$productlist = "";
echo "doesnt work ";
die();
}
//var_dump($productlist);
foreach($productlist as $number){
foreach ($number as $cat => $prop) {
echo $cat;
echo $prop;
}
}
$html .= "</table>";
您正在向同一个 URL 发出两个不同的请求。
$.ajax
您正在发出 POST 请求。
- 您正在使用
window.open
发出 GET 请求。
PHP 程序将 运行 独立地 处理每个请求。您在第一个请求中发布的数据在第二个请求中将不可用。
如果你想显示一个页面,你得到的结果是 POSTing 一些数据然后使用:
<form action="..." method="post" target="_self">
不要使用 Ajax(这是为了在不离开当前页面的情况下发出 HTTP 请求 — 通常,您会在对 Ajax 请求并使用 DOM 操作将其添加到当前页面。
我是 ajax 的新手,所以我不确定我是否做对了。 我正在尝试将 Javascript 数组传递给 PHP 文件。如果成功打开 PHP 文件并显示数组。打开文件后出现的错误是:
undefined $productList
同时,如果我检查并查看网络选项卡,ajax 已成功发送并且响应也很好(我可以看到数组的内容),但是当我尝试打开文件时它抛出我的错误。所以我的问题是如何打开一个文件,我用 ajax 将数据发送到该文件?
数组:
array(6) { ["name"]=> string(28) "Inuyasha by rumiko takahashi" ["image"]=> string(35) "https://via.placeholder.com/195x280" ["id"]=> string(1) "5" ["count"]=> string(1) "1" ["price"]=> string(2) "12" ["basePrice"]=> string(2) "12" }
ajax:
function passArray(){
$.ajax({
type: "POST",
url: "assets/js/test.php",
data: {productsInCart:productsInCart},
error: function(){
alert('something went wrong..');
}
});
//window.open("assets/js/test.php", "_self"); //how to open the file where the data is sent?
}
PHP代码:
if($_POST){
$productlist = $_POST;
}else{
$productlist = "";
echo "doesnt work ";
die();
}
//var_dump($productlist);
foreach($productlist as $number){
foreach ($number as $cat => $prop) {
echo $cat;
echo $prop;
}
}
$html .= "</table>";
您正在向同一个 URL 发出两个不同的请求。
$.ajax
您正在发出 POST 请求。- 您正在使用
window.open
发出 GET 请求。
PHP 程序将 运行 独立地 处理每个请求。您在第一个请求中发布的数据在第二个请求中将不可用。
如果你想显示一个页面,你得到的结果是 POSTing 一些数据然后使用:
<form action="..." method="post" target="_self">
不要使用 Ajax(这是为了在不离开当前页面的情况下发出 HTTP 请求 — 通常,您会在对 Ajax 请求并使用 DOM 操作将其添加到当前页面。