gpt4 book ai didi

php - 使用 Ajax JQuery 和 PHP 将 .csv 文件导入 MySQL 的进度条

转载 作者:行者123 更新时间:2023-11-30 22:10:14 24 4
gpt4 key购买 nike

我尝试使用 PHP、JQuery 和 HTML 编写进度条代码。因此,我为 PHP 文件发出了 Ajax 请求,在 success Ajax 参数中,我搜索了从 PHP 文件请求的 data,如下所示。

success: function(data){       
if(data == 'Error1'){
alert("The File is not a .csv");
}else if(data == "Error2"){
alert("Please select a file to import!");
}else{
$('#consumidor_table').html(data);
alert("The importation has been made!");
}
}

else 确实打印了一个包含 MySql 数据库行的表。 PHP 文件从 HTML 输入中读取 .csv 并将这些行插入到数据库中。

其实我做一个进度条的代码是这样的:在成功参数之前

xhr: function(){
var xhr = new window.XMLHttpRequest();
xhr.upload.addEventListener("progress", function(evt){
if (evt.lengthComputable) {
var percentComplete = evt.loaded / evt.total;
console.log(evt.loaded);
console.log(evt.total);
console.log(percentComplete*100);
addProgress(percentComplete*100);
}
});
return xhr;
},

全部代码: JQuery ; PHP URL

错误:当上传文件并提交表单时,console.log(evt.total);console.log(evt. loaded); 打印相同的值,进度条已满,但 Ajax 继续请求 PHP 文件,而我的表仍然是空的。

那么我可以使用来自 PHP 文件的响应对我的进度条执行哪些操作?

最佳答案

我不确定加载情况,即使我正在寻找可以显示已完成多少的东西。但是我有一个工作代码可以将 CSV 文件上传到 Mysql。

<?php  
if(!empty($_FILES["employee_file"]["name"]))
{
$connect = mysqli_connect("123.123.123.99","db_username","db_password","db_Name") or die('Unable To Connect');
$output = '';
$allowed_ext = array("csv");
$extension = end(explode(".", $_FILES["employee_file"]["name"]));
if(in_array($extension, $allowed_ext))
{
$file_data = fopen($_FILES["employee_file"]["tmp_name"], 'r');
fgetcsv($file_data);
while($row = fgetcsv($file_data))
{
$customerDetails = mysqli_real_escape_string($connect, $row[0]);
$cod = mysqli_real_escape_string($connect, $row[1]);
$trackingID = mysqli_real_escape_string($connect, $row[2]);
$shipmentType = mysqli_real_escape_string($connect, $row[3]);
$vendorName = 'eKart';
$query = "
INSERT INTO nss_delivery
(customerDetails, cod, trackingID, shipmentType, vendorName)
VALUES ('$customerDetails','$cod', '$trackingID', '$shipmentType', '$vendorName')
";
mysqli_query($connect, $query);
}
$select = "SELECT * FROM nss_delivery ORDER BY deliveryID DESC";
$result = mysqli_query($connect, $select);
$output .= '
<table class="table table-bordered">
<tr>
<th width="5%">ID</th>
<th width="25%">Customer Details</th>
<th width="35%">COD Amount</th>
<th width="10%">Tracking ID</th>
<th width="20%">ShipmentType</th>
<th width="5%">Vendor Name</th>
</tr>
';
while($row = mysqli_fetch_array($result))
{
$output .= '
<tr>
<td>'.$row["deliveryID"].'</td>
<td>'.$row["customerDetails"].'</td>
<td>'.$row["cod"].'</td>
<td>'.$row["trackingID"].'</td>
<td>'.$row["shipmentType"].'</td>
<td>'.$row["vendorName"].'</td>
</tr>
';
}
$output .= '</table>';
echo $output;
}
else
{
echo 'Error1';
}
}
else
{
echo "Error2";
}
?>

关于php - 使用 Ajax JQuery 和 PHP 将 .csv 文件导入 MySQL 的进度条,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40314237/

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