Добрый день! Я просто хочу поместить захваченное изображение в указанную папку, а не в саму базу данных посредством вызова ajax. Вот что я сделал:
Файл JS:
$ ('# btn-save-snapshot'). on ('click', function () { Webcam.snap (функция (data_uri) { $ .Ajax ({ url: '/ capture', тип: 'POST', данные: { Captimage: data_uri }, успех: функция (данные) { предупреждение ( 'Saved!'); }, ошибка: функция (xhr) { предупреждение (. $ parseJSON (xhr.responseText) [ 'ошибка'] [ 'сообщение']); } }); }); });
Я не знаю, как сохранить его в указанной папке. Я уже использовал Input :: file (‘captimage’) -> move ($ destination) на контроллере, но он не работает.
Вы получаете только строку, а не само изображение (обычно base64
-формат). Итак, что вам нужно сделать, это отправить информацию в отдельный файл php, а затем использовать file_put_contents
сохранить изображение. Перед сохранением необходимо удалить префикс.
Так что вы могли бы сделать что-то подобное 🙁 Если вы вернетесь base64
-string):
file_put_contents('/capture/img.jpg', base64_decode(preg_replace('#^data:image/\w+;base64,#i', '', $_POST['captImage'])));
Если это не base64, пожалуйста, опубликуйте результат, так что содержание вашего captImage
-переменный.
Других решений пока нет …