Отправка сырой большой таблицы на бэкэнд PHP [закрыто]Javascript

Форум по Javascript
Ответить
Anonymous
 Отправка сырой большой таблицы на бэкэнд PHP [закрыто]

Сообщение Anonymous »

Я пытаюсь отправить внешний HTML таблицы на бэкэнд PHP. Я могу отправлять небольшие данные о таблице, такие как 10 КБ, но если я попытаюсь отправить таблицу 10 МБ, то статус сети показывает ожидание и не получает никакого кода состояния. И это никогда не решается. Я уже максимизирую лимит поста, и все еще не могу отправлять данные на бэкэнд. Я попробовал метод FormData. FormData Blob также, но все еще такая же проблема. Небольшой стол, способный отправлять на бэкэнд, но для большого состояния таблицы, показывающего ожидание и никогда не решается.
Frontend: < /p>
function download_table() {
const table = document.getElementById("Dtf-table");
if (!table) {
alert("Table is not detected");
return;
}

const html = table.outerHTML;

fetch("factory/generate_excel1.php", {
method: "POST",
headers: {
"Content-Type": "text/plain" // send raw HTML as plain text
},
body: html
})
.then(response => response.text())
.then(fileName => {
const a = document.createElement("a");
a.href = `factory/${fileName.trim()}`; // path to saved file
a.download = ""; // let browser pick the filename
document.body.appendChild(a);
a.click();
document.body.removeChild(a);
})
.catch(error => {
console.error("❌ Error:", error);
});
}
< /code>
Бэкэнд: < /p>
require __DIR__ . '/../../php/vendor/autoload.php';

use PhpOffice\PhpSpreadsheet\Reader\Html;
use PhpOffice\PhpSpreadsheet\Writer\Xlsx;
use PhpOffice\PhpSpreadsheet\Cell\Coordinate;

try {
$rawHtml = file_get_contents("php://input");
if (!$rawHtml) {
throw new Exception("❌ No HTML content received.");
}

// Load HTML into Spreadsheet
$reader = new Html();
$spreadsheet = $reader->loadFromString($rawHtml);```


Подробнее здесь: https://stackoverflow.com/questions/797 ... hp-backend
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Javascript»