gpt4 book ai didi

php - 如何使用 jQuery 同时加载两个 PHP 脚本?

转载 作者:行者123 更新时间:2023-12-01 07:50:04 26 4
gpt4 key购买 nike

我有一个由多个不同阶段组成的上传功能,并且此上传的持续时间可能相当长。为了提高此功能的可用性,我想向用户提供有关上传进度的信息。

上传通过jQuery处理,并使用AJAX与DB通信。

为了呈现不同的消息,我在上传脚本的不同阶段更改 session 变量(status)的值。我尝试使用 setInterval 每秒检查 status 的值,但这要么不显示任何内容,要么导致上传代码不起作用。

jQuery:

$('.content form').on('submit', function(e) {
e.preventDefault();

//get session value every second
setInterval(function() {
$.ajax({
url: "index.php?route=module/stock/getStatus&token=<?php echo $_GET['token']; ?>",
success:function(response){
console.log(response);
}
});
}, 1000);

//process upload
$.ajax({
url: $(this).attr('action'),
type: "POST",
data: form_data,
cache: false,
processData: false,
contentType: false,
success: function(data) {
data = $.parseJSON(data);
}
});
});

用于检索 session 值的 PHP(第一个 AJAX 请求):

echo json_encode($_SESSION['status']);

用于上传的 PHP(第二个 AJAX 请求):

$get = $this->pdf2string($name); //get pdf data
$text = str_replace("\n", ",", $get); //change all new lines to commas

// process replacement strings

$replacements = array(
'Item No.' => 'sku',
'Description' => 'description,stock,discontinued',
);
$_SESSION['status'] = array(
'info' => 'Converting file to CSV'
);

foreach($replacements as $search => $replace) {
$text = str_replace($search, $replace, $text);
}

$_SESSION['status'] = array(
'info' => 'Structuring CSV data'
);

foreach($array as $item) {
// process csv data
}

$_SESSION['status'] = array(
'info' => 'CSV Structured'
);
$this->storeData($new_array); //store data

如何同时使用两个 AJAX 请求?

我在 XAMPP 上使用 Windows 8.1,但是我有一个测试服务器,它仍然会产生与上面讨论的相同的结果。

任何帮助都会很棒!

最佳答案

听起来您的计算机无法处理多个连接。我在 superuser.stackexchange - XAMPP apache not handling multiple requests 上发现了类似的问题

他的解决方案是:

Starting and stopping the session every time I want to write to the session works though.

如果他没有提供任何代码,我怀疑他做了类似的事情:

session_start();
$_SESSION['status'] = array('info'=>'msg goes here');
session_write_close();
//...
session_start();
$_SESSION['status'] = array('info'=>'another msg goes here');
session_write_close();
//...

关于php - 如何使用 jQuery 同时加载两个 PHP 脚本?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31006810/

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