Вход в систему по логину и паролю методом POST.
Логины, пароли и другие настройки хранятся в конфигурационном файле config.php в виде массива:
$users[] = array("user1", "password1", "file1", "level1");
$users[] = array("user2", "password2", "file2", "level2");
$dir='/home/site/dir/uploads/';
$time_start=180;
после удачного входа в переменной $_SESSION хранится id пользователя из переменной $users и значение пароля после функции crypt (PHP) (или любом другом однопроходном шифрованном виде), а также 15 значный случайный уникальный идентификатор для данного пользователя в данное время, и время входа.
Если сохранёное время входа больше $time_start, то обнулить данные время входа и осуществить переход опять для входа. Данная возможность существует лишь для того чтобы если окно браузера открыто долгое время и пользователь захотел перезагрузит страницу, то у него опять появилось первичное окно входа.
После входа пользователю даётся возможность записать через браузер ТОЛЬКО звук, за основу используем полностью разработку RecordRTC
, все действия осуществляются без перезагрузки страницы. Код должен быть написан так, чтобы файл RecordRTC.js или RecordRTC.min.js брался с сайта разработка. Для осуществления записи в меню существует одна кнопка ЗАПИСАТЬ. После нажатия кнопки ЗАПИСЬ за место её появляется кнопка ЗАВЕРШИТЬ ЗАПИСЬ. После нажатия кнопки ЗАВЕРШИТЬ ЗАПИСЬ за место её появляется кнопка ЗАПИСЬ, записанный трек сохраняется в директории $dir на сайте указанной в конфигурационном файле по маске "уникальный идентификатор полученный после входа, далее разделитель, далее текущая метка времени Unix" и появляется в текущем окне браузера с возможность прослушивания, как в реализации
, и рядом кнопка УДАЛИТЬ. При нажатии на кнопку УДАЛИТЬ, рядом с файлом, файл удаляется из окна браузера и удаляется из директории на сайте. В меню также появляется СОЗДАТЬ ФАЙЛ, рядом с кнопкой запись.
После второй и последующей записи, запись появляется после последней записанной, появляется также возможность менять местами порядок записанных треков.
Запись осуществляется в кодеке OPUS или OGG, в зависимости от браузера, для минимизации трафика. Качество записи хорошее, можно использовать настройки
.
При нажатии на кнопку СОЗДАТЬ ФАЙЛ, все кнопки становятся неактивными и происходит отправка данных в файл SAVE-FILE.PHP запроса (JSON или иной метод) с передачей массива содержащего id пользователя из $users, номер файла по порядку (как отобраено в окне браузера, у учётом возможных перемещений, вида 1,2,3,4..) и соответствующий этому номеру уникальным именем файла сохранённым по маске.
После отработки файла SAVE-FILE.PHP возвращает стутас отправки:
"ОК" файл создан и появляется ссылка на него в окне браузера, указная в массиве (значение "file2", например) с возможность открытия, при нажатии на неё, в новом окне браузера.
или сообщение об ошибки обработчика в текстовом виде на красном фоне.
Сам обработчик в файле SAVE-FILE.PHP написан и использует вначение "level2" и другие принадлежащие конкретному id из массива $users полученного из переданных в него данных (id, порядок, имя файла).