Я использую https://github.com/addpipe/simple-web-audio-recorder-demo, чтобы попытаться записать звук в браузере и загрузить аудиоблок в файл wav на локальном сервере. Но это было начало кошмара.
Я искал в Интернете не менее 2 недель, но не нашел решения для моей проблемы.
Я пытался использовать ajax, используя чистый javascript, регистрируя все, пытаясь найти, как получить, может быть, wav из браузера, и, возможно, это дало бы мне направление.
Это код:
JavaScript:
var xhr = new XMLHttpRequest();
xhr.onload = function(e) {
if (this.readyState === 4) {
console.log("Server returned: ", e.target.responseText);
}
};
var fd = new FormData();
fd.append("audio_data", blob, filename);
xhr.open("POST", "upload.php", true);
xhr.send(fd);
PHP:
print_r($_FILES);
$filename = $_FILES['audio_data']['name'];
$location = "upload" .$filename;
$moved = move_uploaded_file($_FILES['audio_data']['tmp_name'], $location);
echo $location;
if($moved){
echo "Uploaded";
}else{
echo "Not Uploaded";
}
Это информация BLOB-объекта: (я получил ее, комментируя файл move_uploaded_file)
Server returned: Array
(
[audio_data] => Array
(
[name] => 2019-05-20T20:07:25.895Z
[type] => audio/wav
[tmp_name] => C:\xampp\tmp\php6DF9.tmp
[error] => 0
[size] => 24620
)
)
Также в папке tmp_name нет файла, это нормально?
Теперь я получаю эту ошибку.
Server returned: PHP Warning: move_uploaded_file(upload2019-05-20T19:43:29.314Z): failed to open stream: Invalid argument in D:\Leffa\web\rectest\upload.php on line 13
PHP Warning: move_uploaded_file(): Unable to move 'C:\xampp\tmp\php95CF.tmp' to 'upload2019-05-20T19:43:29.314Z' in D:\Leffa\web\rectest\upload.php on line 13
Я высоко ценю помощь, которая положила конец моим страданиям; -;