当表单页面最小化时,如何从条形码阅读器插入值到表单输入


How to insert value from barcode reader into form input when the form page is minimized?

我用PHP开发了一个考勤系统,我在本地主机上运行它。系统是这样的:

假设一个学生有一个条形码身份证,并且有一个条形码阅读器和我开发的表格来记录他的出勤情况。我使用的条形码阅读器会自动按下提交按钮,因此一旦触发条形码阅读器的按钮,就会获取条形码中的值,经过一些处理后,会将一些值插入数据库中。

现在它工作得很好,但问题是每次我取出勤,我需要先打开表格,然后取出勤。(我一天需要点几次勤。)我想知道有没有一种不用反复打开表格就能记录考勤的方法。

如果没有解决方案,是否有可能保持表单页面最小化,并采取出席,而有人在电脑上工作(做其他事情)?

这主要取决于您的条形码阅读器的工作方式。我从你的描述中推断:

  • 条形码阅读器激活后发送数据并模拟输入
  • 数据填充在活动输入元素中,或者,我假设,填充在可以接受键盘字符的任何地方。可以通过打开文本编辑器,看看数据是否被接受,后跟一个换行符来测试。

接下来,你有一个web应用程序,它不在后台运行。从技术上讲,即使最小化,它在浏览器上仍然是活动的,但是一旦最小化,浏览器就不再是具有焦点的应用程序,因此数据不会进入它。

所以你有两个问题:

  1. 您需要一种不影响当前应用程序的方式从条形码读取器获取数据。换句话说,如果有人正在使用文字处理器,你不希望条形码读取器在他们的工作中突然插入随机信息。
  2. 您需要一个应用程序或服务来"监听"条形码阅读器并与数据库进行交互。你可以这样写,当出现误读、错误的参与者等情况时,它会弹出一个对话框;但是,如果在考勤期间需要使用计算机做其他事情,那可能会很烦人。

希望你的条码阅读器供应商有一些信息可以帮助你解决问题1。对于问题2,除了考虑将应用程序重写为可以最小化的服务或应用程序之外,我没有任何建议。

我想象扫描器附带的软件会以这样或那样的方式让您在条形码扫描事件发生时执行命令。

然后编写命令

php attendance.php "...barcode data..."

我敢打赌扫描器附带的文档至少会有些帮助。