Я использую JSZip для архивирования некоторого пользовательского файла загрузки и сохраняю этот zip-файл на сервере. zip_file
содержит zip-файл, который я хочу сохранить на сервере. zip_file
в формате base64, поэтому, если я сохранил его в PHPMyAdmin как LongText
формат, его не удалось сохранить какой-либо почтовый индекс. Можно ли конвертировать zip_file
архивировать и перейти в каталог? Если да, то как это сделать? Или Как сохранить значение base64 в PHPMyAdmin.
zip.generateAsync({type:"base64"}).then(function (content) {
zip_file = "data:application/zip;base64," + content;
//zip_file convert and move to /uploads folder
});
Вы можете установить возврат type
в blob
использовать XMLHttpRequest()
опубликовать Blob
в php
zip.generateAsync({type:"blob"}).then(function (content) {
var request = new XMLHttpRequest();
request.open("POST", "/path/to/server");
request.send(content);
});
при использовании php php://input
, увидеть Помимо $ _POST, $ _GET и $ _FILE: работа с BLOB-объектами в JavaScript и PHP
<?php
// choose a filename
$filename = "file.zip";
// the Blob will be in the input stream, so we use php://input
$input = fopen('php://input', 'rb');
$file = fopen($filename, 'wb');
// Note: we don't need open and stream to stream,
// we could've used file_get_contents and file_put_contents
stream_copy_to_stream($input, $file);
fclose($input);
fclose($file);
?>
Других решений пока нет …