【发布时间】:2011-01-23 00:46:45
【问题描述】:
我想在 PHP 中使用门禁读卡器。我这样做是为了监控大学的出勤率。是否有任何中间技术可用于将门禁读卡器的读数读取到数据库中?
【问题讨论】:
-
读卡器会物理连接到服务器,还是需要通过浏览器从客户端获取读数?
标签: php smartcard-reader
我想在 PHP 中使用门禁读卡器。我这样做是为了监控大学的出勤率。是否有任何中间技术可用于将门禁读卡器的读数读取到数据库中?
【问题讨论】:
标签: php smartcard-reader
我知道我迟到了这个问题,但我正在构建一个类似的产品。实际上,与其他答案相反,使用简单的读卡器可以做到这一点。基于 USB 的读卡器充当简单的键盘输入设备,因此当有人准备刷卡时,请确保文本框处于焦点位置,然后刷卡。
从那里,您可以获取读取的键盘数据并将其推送到隐藏的输入框,然后在服务器端(甚至使用一些 JavaScript 的客户端)处理它。我使用了大量的 jQuery 来让客户端的事情变得更加无缝,所以它不像我描述的那么简单,但它绝对是可能的。
Here's a .NET example that you can use to port to PHP
编辑:2016 年 2 月
我用一个非常简单的 jQuery 实现创建了一个 GitHub Gist。
【讨论】:
我以前使用过条码扫描器,我知道我们的行为就像一个键盘,基本上“键入”它读取的内容,然后按 Enter。也许您的读卡器可以或正在做类似的事情?
如果是这种情况,您可以使用文本输入和 JavaScript 设置一个非常简单的表单,自动聚焦输入。然后让表单提交到一个 PHP 脚本,该脚本记录它给出的内容。
我曾经见过用作计时设备的卡片扫描仪。我的公司有它在一台计算机上,在显示器上有一个全屏显示当前状态的页面。当有人刷卡时,它会启动一个 Perl 程序并更新数据库。我认为页面设置为每隔这么多秒刷新一次。
希望我所说的能激发你的灵感。
【讨论】:
很可能,这不能轻易地与 PHP 集成。也许对于通过 JSON 或其他方式的后端 API 接口,但读卡器接口需要是可以运行和使用物理硬件的东西。
除非你的意思是,你已经有了读数并想把它放在数据库中……PHP 可以解析它。
【讨论】:
如果与阅读器一起提供了软件,您可能需要参考其文档以了解其输出数据的方式。比方说,如果它给出一个 CSV,你可能想解析 CSV 并将其存储在数据库中,以后可以通过 PHP 处理。
一些阅读器软件能够直接写入数据库。同样,这完全取决于您拥有的阅读器品牌和型号。
【讨论】:
我相信其他一些人和其他人是对的。但是您还必须记住,如果不是 1 或 2 层,某些读卡器是 3-4 层。您可以通过简单的滑动将其用作“键盘”,但如果有的话,它只会读取第一行,仅此而已。
【讨论】: