PHP - Auslesen von Magnetkarten
Ich habe eine Anwendung, wo die Kartenleser angebracht werden, um system-und ich habe zu Lesen, magnetic card reader-Daten, wenn jemand die swap-Karte auf Kartenleser angebracht.
Magnetkarte grundsätzlich hält der Benutzer details für die Anmeldung. Also user geben card an der Rezeption. empfangsdame tauschen-Karte und system liest Daten von der Karte und register, die user in meinem party-management-Anwendung.
Ich keine Idee, wie dies zu tun? Ist es mit Php möglich ?
Bitte teilen Sie Idee, wie dies zu tun.
- es ist sicherlich möglich, aber das ist alles, was wir sagen, können Sie aus den Informationen, die Sie gab
- Es ist absolut davon abhängig, wie Sie die magnetische Karte angeschlossen ist, die Maschine und das Betriebssystem, die php-code. Wenn Ihre unix-box, die Sie vielleicht Glück und bekommen einige Datei-ähnliche Darstellung.
- sagen Sie ihm das nicht, er will Ihr Geld zu stehlen :))
- Ist die Karte mit den web-server oder den client?
- PHP ist wirklich eine schlechte Wahl für diese. PHP ist eine Sprache, die gebaut für die Bahn, nicht die Reale Welt. Versuchen Sie alternativen wie Python, Java, etc. Die Unterstützung für physische I/O-Peripheriegeräte wie Kartenleser.
- auf der client-Maschine sehen.. die Mitglieder werden kommen, um den club und die empfangsdame registrieren. system ist online, aber die Registrierung wird durch einzelne clint Maschine, die empfangsdame
- Dann wird es nicht möglich sein, mit PHP allein. PHP läuft auf dem server, nicht der client.
Du musst angemeldet sein, um einen Kommentar abzugeben.
Da Sie dies tun wollen in PHP, ich nehme an, dies ist ein web-Anwendung und die Karte wird geklaut bei der client Maschine, wo die browser ausgeführt wird.
Haben Sie möglicherweise eine Tastatur-emulation swiper (Sie erhalten in der Regel ein text wie " 123456'), in dem Fall musst du abfangen der Tastatur/Fokus und laden Sie die Daten als Formular-Feld oder AJAX. Dies kann schwierig sein, wenn das Feld oder in den browser verlieren den Fokus, und Sie würden ausführen müssen, um den browser im kiosk-Modus".
Oder Sie können eine swiper mit anderen Technologien wie Seriell (RS232[C]), die ich glaube, ist ziemlich überflüssig, oder benutzerdefinierte Schnittstelle (das bedeutet in der Regel ein USB-swiper und eine Reihe von API). Wenn dies der Fall ist, es hängt alles davon ab, was API implementiert werden; einige Geräte kommen mit einem ActiveX-applet wird die Kraft, die Sie mithilfe von Internet Explorer-Technologien, die auf Windows-Plattform. Einige andere verwenden Java-applets, und Sie werden haben, um Ihnen die Integration in die Web-Seite.
Schließlich einige von Ihnen haben eine vollständig benutzerdefinierte Anwendung die Mai-Schnittstelle mit dem system auf verschiedene Arten (der Fall "eigenen BIBLIOTHEK" ist die gleiche, außer dass Sie müssen auch entwickeln, die benutzerdefinierte Anwendung sich!):
lynx
(entweder Linux oder Windows) und Schwalbenschwanz in Fall #1, "custom HTTP-Anfrage".Leider die verschiedenen Lieferanten neigen dazu, entweder die "hacky" Seite (D. H., Sie liefern Ihnen die hardware und ein minimum von software, eine Bibliothek und ein Beispiel MFC-app oder source-code, und Sie sind auf eigene Faust) oder auf der "alles enthalten und nonnegotiable" Seite (D. H. bekommen Sie Ihre Leser mit einem vollständig konfigurierten POS oder Mitarbeiter timelogger app, und nicht einfach etwas anderes zu tun mit ihm).
Wenn Sie server-Seite, d.h., PHP script (nicht das HTML/text-Ausgabe) und badge-Leser auf der gleichen Maschine laufen, dann wieder es hängt davon ab, welche software Sie geliefert wurden, mit. Für Server, Tastatur-emulation sind entweder der beste (wenn man einen headless server ohne Grund, immer schließen Sie eine Tastatur) oder ärger (wenn der magnetische Leser und der echten Tastatur finden sich im Wettbewerb). RS232[C] sind auch sehr einfach zu verwenden, unter Linux können Sie
ttytail
oder vielleicht sogartail -f
Sie das Gerät auf eine log-Datei und eine Umfrage der log-Datei. , Die SIE HABEN KÖNNEN FRAGEN der PRIVATSPHÄRE MIT sich, DASS (denke, "Erfassung aller Kunden-Kreditkarten-Nummern im Klartext"). Oder befestigen Sie das Gerät in PHP mitfopen()
keine Probleme gibt.Custom-API-Bibliotheken schwierig sein könnte. Sie könnte zu dem Mittel greifen müssen, um den trick zu schaffen, einen socket oder die benannte pipe "server" öffnet das Gerät und lässt seine Ergebnisse für PHP verfügbar über
fsockopen()
. Unix-sockets und client/server-Programmierung-Kenntnisse erforderlich.UPDATE
Sah ich in einem Kommentar, dass Sie die Bibliothek für den barcode-reader. Ich immer noch davon aus, dass Sie in einem web-app-Szenario (sagen wir, drei POS-Leser, ein server).
Einen Weg, dies zu tun könnte:
Die web-Anwendung an den server eine Abfrage in Intervallen; wir haben zwei paralle-workflows:
Aufbau eines modularen Systems mit einem barcode-Lesegerät - eine Möglichkeit, Sie könnte es tun, ist die Verwendung einer Sprache wie VB oder c# erstellen einer einfachen web-browser (C# eine Komponente für Sie zu tun dies in etwa 5 Minuten). C# konnten dann mit dem browser interagieren, senden von Daten an die Website?
Auf einem unix-system würde ich die Verwendung einer benannten pipe und haben so etwas wie python behandeln, die magnetische Karte. diejenigen, die ive verwendet RS232, die python Griffe schön. und kann dann die Pfeife zu PHP. PHP kann auch senden info zurück auf das Rohr, z.B. Fragen nach einer re usw. Lesen.