timurmelnikov / yii2-webcam-shoot
Yii2 виджет для работы с WEB камерой
This package's canonical repository appears to be gone and the package has been frozen as a result.
Installs: 1 214
Dependents: 0
Suggesters: 0
Security: 0
Stars: 3
Watchers: 2
Forks: 5
Type:yii2-extension
Requires
This package is auto-updated.
Last update: 2024-07-29 03:32:44 UTC
README
Назначение виджета
Захват изображения с WEB камеры, сохраниение снимка в формате base64, для последующей передачи через input формы на сервер. Далее, на сервере, изображение можно либо преобразовать в файл с последуюшим сохранением в файловой системе, либо непосредственно записать в базу данных в формате base64.
Системные требования
Yii2 с установленным расширением "yiisoft/yii2-bootstrap" (входит в пакет установки Yii2 по умолчанию yiisoft/yii2-app-basic и yii2-app-advanced) Виджет, тестировался в браузерах:
- Google Chrome v. 53.0.2785.116
- Firefox v. 48.0.2
Установка
Добавить в секцию "require" файла composer.json:
{ "require": { "timurmelnikov/yii2-webcam-shoot": "dev-master" } }
После редактирования файла выполнить команду composer update
Использование
В представлении, где будет использоваться yii2-webcam-shoot, подключить:
use timurmelnikov\widgets\WebcamShoot;
Вывести виджет:
echo WebcamShoot::widget([ 'targetInputID' => 'textimg', 'targetImgID' => 'textphoto', ]);
Важную роль, играют свойства 'targetInputID' и 'targetImgID'...
На сервере, изображение в формате base64, можно обратотать, например так:
define('UPLOAD_DIR', 'img/'); $img = $_POST['textimage']; //Атрибут инпута с name = textimage $img = str_replace('data:image/png;base64,', '', $img); $img = str_replace(' ', '+', $img); $data = base64_decode($img); $file = UPLOAD_DIR . uniqid() . '.png'; $success = file_put_contents($file, $data); print $success ? $file : 'Unable to save the file.';