我有这个代码,扫描和解码qr图像在此源代码https://github.com/khanamiryan/php-qrcode-detector-decoder的帮助下,它扫描图像文件从您的documents..but我想扫描qr使用我的网络摄像头。
二维码扫描器脚本如下所示
<?php
if ($_SERVER['REQUEST_METHOD'] != "POST"){
header("location:take-attendance.php");
die();
}
require "vendor/autoload.php";
$qrcode = new Zxing\QrReader($_FILES['qrimage']['tmp_name']);
$text = $qrcode->text();
var_dump($text);
?>
然后我拍摄快照的摄像头是这样的
<form action="decode.php" method="post" enctype="multipart/form-data">
<script src="webcam.js"></script> <!--source code script from github for webcam config-->
<div id="my_camera" style="width:320px; height:240px;"></div>
<div id="my_result"></div>
<script type=text/javascript>
Webcam.attach( '#my_camera' );
function take_snapshot() {
Webcam.snap( function(data_uri) {
document.getElementById('my_result').innerHTML = '<img src="'+data_uri+'"/>';
} );
}
</script>
<a href="javascript:void(take_snapshot())">Take Snapshot</a>
因此,我单击拍摄快照图像将显示为img src,如果我单击扫描,我希望获取该图像,因此这意味着我需要替换此代码
$qrcode = new Zxing\QrReader($_FILES['qrimage']['tmp_name']);
使用我单击该快照时生成的文件名,即
<img src="'+data_uri+'"/>
但问题是我不知道如何编写代码的格式,这是我的想法,但它不工作
$qrcode = new Zxing\QrReader($_FILES['data_uri']);
提前感谢
发布于 2019-02-27 12:46:36
你没有在你的表单中发送任何东西。
快照是以base64格式生成的,所以您只能将其以字符串的形式发送到服务器,并解码为图片。
但是使用JS QR解码器要简单得多,就像这样的https://github.com/colcodev/qrcode-decoder-js
qrcode.decode(data_uri)
然后,如果您需要通过简单的输入将结果发送到服务器
Webcam.attach( '#my_camera' );
function take_snapshot() {
Webcam.snap(function(data_uri) {
document.getElementById('my_result').innerHTML = '<img src="'+data_uri+'"/> - '+qrcode.decode(data_uri);
});
}
https://stackoverflow.com/questions/54898134
复制相似问题