php.de

Zurück   php.de > Webentwicklung > PHP Einsteiger > PHP Tipps 2010

 
 
LinkBack Themen-Optionen
Alt 29.07.2010, 18:41  
Neuer Benutzer
 
Registriert seit: 29.07.2010
Beiträge: 14
PHP-Kenntnisse:
Anfänger
Xdrxdr befindet sich auf einem aufstrebenden Ast
Standard Per PHP Daten an ein externes Gerät weitergeben

Hallo zusammen,

ich bin "frisch" was php angeht. Ich habe mich ein wenig schon mit der Sprache auseinandergesetzt. Habe diverse Tutorials angeschaut und bin zufrieden wie sich so langsam Fortschritte zeigen.
Nun aber zu meinem eigentlichen Grund weshalb ich schreibe. Es soll kein Lösungsvorschlag gemacht werden oder ähnliches, nur eventuell ob das, was ich vorhabe, realisierbar ist mit php.

Da man ja bekanntlich mit seinen Aufgaben wächst habe ich mir gedacht ich entwerfe/schreibe/programmiere ein Webformular mit dem ichDaten an ein Gerät übergeben kann. In diesem Fall ein NAT mit Linux als OS.

Ich möchte gerne ein Webformular erstellen in dem man die IP Adresse, Subnetmask, Gateway etc. in die config auf dem Linux schreibt "/etc/network/interfaces"

Das Gerät ist mittels R232 Kabel angeschlossen.

ISt das überhaupt realisierbar mit php ? Oder kann ich zumindest die Daten in ein Formular eintragen welches mir dann ein "Excel-Sheet" generiert?

Habt vielen Dank wenn Ihr euch Zeit nehmt und diesen Thread beantwortet.

Mit freundlichen Grüßen

XdrXdr
Xdrxdr ist offline  
Sponsor Mitteilung
PHP Code Flüsterer

Registriert seit: 21.08.2005
Beiträge: 4682
PHP-Kenntnisse:
Fortgeschritten

Alt 30.07.2010, 01:40  
Erfahrener Benutzer
 
Registriert seit: 26.07.2010
Beiträge: 10.654
PHP-Kenntnisse:
Fortgeschritten
tr0y genießt hohes Ansehentr0y genießt hohes Ansehentr0y genießt hohes Ansehentr0y genießt hohes Ansehentr0y genießt hohes Ansehentr0y genießt hohes Ansehentr0y genießt hohes Ansehentr0y genießt hohes Ansehentr0y genießt hohes Ansehentr0y genießt hohes Ansehentr0y genießt hohes Ansehen
Standard

Zitat:
Zitat von Xdrxdr Beitrag anzeigen
Hallo zusammen,

ich bin "frisch" was php angeht. Ich habe mich ein wenig schon mit der Sprache auseinandergesetzt. Habe diverse Tutorials angeschaut und bin zufrieden wie sich so langsam Fortschritte zeigen.
Nun aber zu meinem eigentlichen Grund weshalb ich schreibe. Es soll kein Lösungsvorschlag gemacht werden oder ähnliches, nur eventuell ob das, was ich vorhabe, realisierbar ist mit php.

Da man ja bekanntlich mit seinen Aufgaben wächst habe ich mir gedacht ich entwerfe/schreibe/programmiere ein Webformular mit dem ichDaten an ein Gerät übergeben kann. In diesem Fall ein NAT mit Linux als OS.

Ich möchte gerne ein Webformular erstellen in dem man die IP Adresse, Subnetmask, Gateway etc. in die config auf dem Linux schreibt "/etc/network/interfaces"

Das Gerät ist mittels R232 Kabel angeschlossen.

ISt das überhaupt realisierbar mit php ? Oder kann ich zumindest die Daten in ein Formular eintragen welches mir dann ein "Excel-Sheet" generiert?

Habt vielen Dank wenn Ihr euch Zeit nehmt und diesen Thread beantwortet.

Mit freundlichen Grüßen

XdrXdr
als php-CLI geht das ( beides ): Ergo solang du genügend rechte im system hast, du wirst bspw. kaum mit dem apache-user auf yy2, com, lpt, rrp oder raw zugreifen können, wenn doch würde ich die systemsicherheit nochmal überdenken..

Prinzipiell alles was dein System per Driver-Interface, COM-Interface oder Wrapper bereitstellen kann, kannst du mit PHP auch steuern / benachrichtigen / erschießen.

das mit dem excel-sheet is einfach als es aussieht, das ist ( seit 2 versionen ) nen valides ( ?.. ja okay.. ganz dünnes eis, valid und microsoft in einem satz ) XML-Dokument. ( xlsx )
__________________
PHP.de - Baud (→α) - PHP.de Repo - Bookmarks
Will code for gifts | BDD | HeForShe
tr0y ist offline  
Alt 30.07.2010, 08:27  
Neuer Benutzer
 
Registriert seit: 29.07.2010
Beiträge: 14
PHP-Kenntnisse:
Anfänger
Xdrxdr befindet sich auf einem aufstrebenden Ast
Standard

Ok, vielen Dank erst einmal für die Info. Also geht es doch so wie ich das gedacht habe. Das ist schon mal fein
Was die Systemsicherheit angeht würde ich es mal so sagen:

Das ganze dient zum einem für mich selber um php an einem für mich sinnvollen Beispiel zu lernen. Zum anderen um dann nicht mehr über "vi /etc/network/interfaces" die config zu schreiben.

Was die Sicherheit angeht soll das sowieso erstmal nur bei mir lokal am Rechner laufen über localhost.

Wenn ich das zum laufen gebracht habe denke ich mal geht es einen Schritt weiter und ich werde dann versuchen das ein Benutzer die gewünschten Daten per Formular einträgt und diese dann an mich per Mail weitergeleitet wird.
Im nächsten Schritt dann eventuell sogar in ein DB gespeichert wird.
Mal sehen, aber erst mal den ersten Schritt machen das ich das so realisiert kriege wie ich es mir gedacht habe.

Vielleicht kann mir ja noch einer Tipps geben wie ich da vorgehen kann als Anfänger.

Hatte mir das ungefähr so gedacht:

Erstmal die einzelnen Abläufe testen wie Kommunikation via Com Port (und verstehen)
Dann die einzelnen Eingaben überprüfen die über das Formular gemacht werden (Ob gültige IP Adresse, Subnetmask etc. zum Beispiel)
Und wenn ich dann soweit alles habe das Ich per Webformular das Gerät ansprechen kann.
Die "config" in das System einspielen kann, zumindest erstmal nur die Ip Adresse ändern.
Dann alles soweit zusammenstricken das es so läuft wie ich es mir gedacht habe.
Klingt im ersten Moment einfach ist aber für einen Neuling denke ich mal eine Herausforderung

Grüße

Xdrxdr
Xdrxdr ist offline  
Alt 30.07.2010, 09:25  
Gesperrt
 
Registriert seit: 14.01.2010
Beiträge: 280
PHP-Kenntnisse:
Fortgeschritten
phpsecretary muss sich bessernphpsecretary muss sich bessernphpsecretary muss sich bessernphpsecretary muss sich bessernphpsecretary muss sich bessern
Standard

Zitat:
Was die Sicherheit angeht soll das sowieso erstmal nur bei mir lokal am Rechner laufen über localhost.
Aber nicht vergessen: Solange der Rechner nicht mit dem Internet verbunden ist, ist es lokal.
Ansonsten ist der Rechner auch global verbunden.
phpsecretary ist offline  
Alt 30.07.2010, 11:37  
Erfahrener Benutzer
 
Registriert seit: 26.07.2010
Beiträge: 10.654
PHP-Kenntnisse:
Fortgeschritten
tr0y genießt hohes Ansehentr0y genießt hohes Ansehentr0y genießt hohes Ansehentr0y genießt hohes Ansehentr0y genießt hohes Ansehentr0y genießt hohes Ansehentr0y genießt hohes Ansehentr0y genießt hohes Ansehentr0y genießt hohes Ansehentr0y genießt hohes Ansehentr0y genießt hohes Ansehen
Standard

Zitat:
Zitat von Xdrxdr Beitrag anzeigen
Ok, vielen Dank erst einmal für die Info. Also geht es doch so wie ich das gedacht habe. Das ist schon mal fein
Was die Systemsicherheit angeht würde ich es mal so sagen:

Das ganze dient zum einem für mich selber um php an einem für mich sinnvollen Beispiel zu lernen. Zum anderen um dann nicht mehr über "vi /etc/network/interfaces" die config zu schreiben.

Was die Sicherheit angeht soll das sowieso erstmal nur bei mir lokal am Rechner laufen über localhost.

Wenn ich das zum laufen gebracht habe denke ich mal geht es einen Schritt weiter und ich werde dann versuchen das ein Benutzer die gewünschten Daten per Formular einträgt und diese dann an mich per Mail weitergeleitet wird.
Im nächsten Schritt dann eventuell sogar in ein DB gespeichert wird.
Mal sehen, aber erst mal den ersten Schritt machen das ich das so realisiert kriege wie ich es mir gedacht habe.

Vielleicht kann mir ja noch einer Tipps geben wie ich da vorgehen kann als Anfänger.

Hatte mir das ungefähr so gedacht:

Erstmal die einzelnen Abläufe testen wie Kommunikation via Com Port (und verstehen)
Dann die einzelnen Eingaben überprüfen die über das Formular gemacht werden (Ob gültige IP Adresse, Subnetmask etc. zum Beispiel)
Und wenn ich dann soweit alles habe das Ich per Webformular das Gerät ansprechen kann.
Die "config" in das System einspielen kann, zumindest erstmal nur die Ip Adresse ändern.
Dann alles soweit zusammenstricken das es so läuft wie ich es mir gedacht habe.
Klingt im ersten Moment einfach ist aber für einen Neuling denke ich mal eine Herausforderung

Grüße

Xdrxdr
Einige Infos bräuchte man schon noch um sich ein Bild zu machen wie das ganze realisierbar wäre. Mal ein Beispiel:

Ich will das...
- Ich will damit Daten auswertbar in eine Art Datenbank speichern
- Ich will Daten permanent auswerten
- Die Granulierung der Datenspeicherung sollte variabel sein
- Das Script sollte interoperabel sein, mehrere Geräte abfragen können. ( Stichwort SAAS im lokalen Sinne )
- Die Geräte sind über USB angeschlossen, lokale dynamisch adressiert

Dann wären wir schon bei...
- Ich baue einen COM-Service der von einem Zweiten Script ( COM-Client ) gesteuert werden kann.
- Der COM-Service läuft redundant, wann immer das System hochgefahren wurde auf dem der Service implementiert wurde.
- Der COM-Service lädt Konfigurationen on-demand.
- Der COM-Service hat mehrere ( deamon-ähnliche ) Kind-Prozesse um mehrere Geräte zur gleichen Zeit anzufragen.

Ein Fallbeispiel dazu wäre eine ( oder mehrere ) USB-Webcams. Das COM-Service Script würde von jeder dieser Webcams permanent alle x-sekunden Helligkeitswerte oder bspw. einen Snapshot abholen und lokal speichern.

Um das Fallbeispiel auf das "Ich will" zu assoziieren, wäre hier schon die methode der Datenspeicherung zu klären: Helligkeitswerte nehmen beispielsweise wenn man sie über einen langen Zeitraum speichert, einen gewissen Platz ein. Du musst also auch entscheiden wie das gespeichert werden soll. Massen an Helligkeitswerten würde ich z.b. ( damits portabel bleibt und ich beim umzug solch eines scripts nicht noch am Environment rumschrauben muss ) in einer SQLite-Datenbank ( Dateibasiertes SQL ) speichern. Aber auch die hat limits, je nach dem welches Betriebssystem du benutzt.

Ob man jetzt auch wirklich eine COM-Service Anwendung schreiben muss ist eine andere Sache, es sollte in deinem Fall erstmal konkretisiert werden was du willst. Aber das obige Beispiel mal zur Orientierung.
__________________
PHP.de - Baud (→α) - PHP.de Repo - Bookmarks
Will code for gifts | BDD | HeForShe
tr0y ist offline  
Alt 30.07.2010, 11:58  
Neuer Benutzer
 
Registriert seit: 29.07.2010
Beiträge: 14
PHP-Kenntnisse:
Anfänger
Xdrxdr befindet sich auf einem aufstrebenden Ast
Standard

Zitat:
Zitat von tr0y Beitrag anzeigen
Einige Infos bräuchte man schon noch um sich ein Bild zu machen wie das ganze realisierbar wäre. Mal ein Beispiel:

Ich will das...
- Ich will damit Daten auswertbar in eine Art Datenbank speichern
- Ich will Daten permanent auswerten
- Die Granulierung der Datenspeicherung sollte variabel sein
- Das Script sollte interoperabel sein, mehrere Geräte abfragen können. ( Stichwort SAAS im lokalen Sinne )
- Die Geräte sind über USB angeschlossen, lokale dynamisch adressiert

Dann wären wir schon bei...
- Ich baue einen COM-Service der von einem Zweiten Script ( COM-Client ) gesteuert werden kann.
- Der COM-Service läuft redundant, wann immer das System hochgefahren wurde auf dem der Service implementiert wurde.
- Der COM-Service lädt Konfigurationen on-demand.
- Der COM-Service hat mehrere ( deamon-ähnliche ) Kind-Prozesse um mehrere Geräte zur gleichen Zeit anzufragen.

Ein Fallbeispiel dazu wäre eine ( oder mehrere ) USB-Webcams. Das COM-Service Script würde von jeder dieser Webcams permanent alle x-sekunden Helligkeitswerte oder bspw. einen Snapshot abholen und lokal speichern.

Um das Fallbeispiel auf das "Ich will" zu assoziieren, wäre hier schon die methode der Datenspeicherung zu klären: Helligkeitswerte nehmen beispielsweise wenn man sie über einen langen Zeitraum speichert, einen gewissen Platz ein. Du musst also auch entscheiden wie das gespeichert werden soll. Massen an Helligkeitswerten würde ich z.b. ( damits portabel bleibt und ich beim umzug solch eines scripts nicht noch am Environment rumschrauben muss ) in einer SQLite-Datenbank ( Dateibasiertes SQL ) speichern. Aber auch die hat limits, je nach dem welches Betriebssystem du benutzt.

Ob man jetzt auch wirklich eine COM-Service Anwendung schreiben muss ist eine andere Sache, es sollte in deinem Fall erstmal konkretisiert werden was du willst. Aber das obige Beispiel mal zur Orientierung.
Ok, vielen Dank erst einmal für die Anhaltspunkte

Ich hab gerade mal ein wenig angefangen und dabei festgestellt das ich vielleicht das ganze erst einmal ohne COM mache Das vielleicht dann später wenn ich alles soweit zusammen habe.

Aber machen wir das mal so wie Du geschrieben hast.

Ich will(Grundstruktur):

....ein Formular wo folgende Eingaben gemacht werden:
IP Adresse
Subnetzmaske
Gateway
Broadcast
das jeweils für 3 Interfaces (eth0 bis2)
....das die eingebenen Daten überprüft werden auf Richtigkeit (kein 192.168.124.rte) sprich das gültige IP Adressen etc erkannt werden und keine Buchstaben enthalten sind.

Ich will (Ausbau der Grundstruktur)

....wenn das Gerüst steht möchte ich diese Dateien in ein vorgefertigtes Excel Sheet übertragen.
....Mail Versand des Excel Sheets an eine bestimmte Mail Adresse

Ich will (weiterer Ausbau)

.....die eingetragenen Daten in eine Datenbank speichern die im lokalen Netzwerk liegt)

Ich will (wenn alles soweit funktioniert)
....über den COM Anschluss meines PC´s die Daten an das Gerät übertragen so das es dann konfiguriert wird.

Das wären jetzt so die Schritte die Ich mir gedacht habe.

1. Daten sammeln
2. Daten versenden
3. Daten speichern
4. Gerät mit den Daten füttern

Wie sagt mein Kollege immer
Zitat:
So hat klein Fritzchen sich das gedacht
Grüße

Xdrxdr
Xdrxdr ist offline  
Alt 30.07.2010, 12:10  
Erfahrener Benutzer
 
Registriert seit: 26.07.2010
Beiträge: 10.654
PHP-Kenntnisse:
Fortgeschritten
tr0y genießt hohes Ansehentr0y genießt hohes Ansehentr0y genießt hohes Ansehentr0y genießt hohes Ansehentr0y genießt hohes Ansehentr0y genießt hohes Ansehentr0y genießt hohes Ansehentr0y genießt hohes Ansehentr0y genießt hohes Ansehentr0y genießt hohes Ansehentr0y genießt hohes Ansehen
Standard

Zitat:
Zitat von Xdrxdr Beitrag anzeigen
Ok, vielen Dank erst einmal für die Anhaltspunkte

Ich hab gerade mal ein wenig angefangen und dabei festgestellt das ich vielleicht das ganze erst einmal ohne COM mache Das vielleicht dann später wenn ich alles soweit zusammen habe.

Aber machen wir das mal so wie Du geschrieben hast.

Ich will(Grundstruktur):

....ein Formular wo folgende Eingaben gemacht werden:
IP Adresse
Subnetzmaske
Gateway
Broadcast
das jeweils für 3 Interfaces (eth0 bis2)
....das die eingebenen Daten überprüft werden auf Richtigkeit (kein 192.168.124.rte) sprich das gültige IP Adressen etc erkannt werden und keine Buchstaben enthalten sind.

Ich will (Ausbau der Grundstruktur)

....wenn das Gerüst steht möchte ich diese Dateien in ein vorgefertigtes Excel Sheet übertragen.
....Mail Versand des Excel Sheets an eine bestimmte Mail Adresse

Ich will (weiterer Ausbau)

.....die eingetragenen Daten in eine Datenbank speichern die im lokalen Netzwerk liegt)

Ich will (wenn alles soweit funktioniert)
....über den COM Anschluss meines PC´s die Daten an das Gerät übertragen so das es dann konfiguriert wird.

Das wären jetzt so die Schritte die Ich mir gedacht habe.

1. Daten sammeln
2. Daten versenden
3. Daten speichern
4. Gerät mit den Daten füttern

Wie sagt mein Kollege immer


Grüße

Xdrxdr
Dann brauchst du Kenntnisse über:
- mailen mit PHP
- das erstellen von validen XSLX-Dokumenten oder den COM-Dienst ( Häufig benötigte Codeschnipsel - Wie erzeuge ich Excel-Dateien mit PHP? )
- das auswerten von $_POST bzw. $_GET ( $_REQUEST )
- HTML4 oder XHTML
- MySQL ( falls du mysql als storage wählst ) oder (Simple)XML ( falls du in einer XML speichern willst, Stichwort: umzug - einfach - wenig installation.
- RegEx oder falls du es "sichtbar logisch" umsetzen willst: implode(), explode(), if() .. elseif() .. else() bzw. switch() { case EXP: .. break; default: ... break; }

Außerdem:
- ca. 2 Liter Kaffee

Viel Spass
__________________
PHP.de - Baud (→α) - PHP.de Repo - Bookmarks
Will code for gifts | BDD | HeForShe
tr0y ist offline  
Alt 30.07.2010, 14:00  
Erfahrener Benutzer
 
Registriert seit: 02.09.2009
Beiträge: 1.105
PHP-Kenntnisse:
Fortgeschritten
mquadrat wird schon bald berühmt werdenmquadrat wird schon bald berühmt werden
Standard

Falls es nur mit Excel geöffnet können werden soll, dann geht auch eine CSV Datei. Siehe PHP Funktionen fgetcsv und fputcsv.

Hardware über PHP ansprechen? Würde ich persönlich vermeiden. Daten in die DB oder in die Datei packen und lieber einen Windows Service oder Linux Deamon schreiben, der zyklisch auf neue Einträge prüft oder mittels eines "ping" geweckt wird.
mquadrat ist offline  
Alt 30.07.2010, 14:04  
Erfahrener Benutzer
 
Registriert seit: 26.07.2010
Beiträge: 10.654
PHP-Kenntnisse:
Fortgeschritten
tr0y genießt hohes Ansehentr0y genießt hohes Ansehentr0y genießt hohes Ansehentr0y genießt hohes Ansehentr0y genießt hohes Ansehentr0y genießt hohes Ansehentr0y genießt hohes Ansehentr0y genießt hohes Ansehentr0y genießt hohes Ansehentr0y genießt hohes Ansehentr0y genießt hohes Ansehen
Standard

Zitat:
Zitat von mquadrat Beitrag anzeigen
Falls es nur mit Excel geöffnet können werden soll, dann geht auch eine CSV Datei. Siehe PHP Funktionen fgetcsv und fputcsv.

Hardware über PHP ansprechen? Würde ich persönlich vermeiden. Daten in die DB oder in die Datei packen und lieber einen Windows Service oder Linux Deamon schreiben, der zyklisch auf neue Einträge prüft oder mittels eines "ping" geweckt wird.
Man kann auch relativ simpel Windows Services oder Linux Deamons in PHP schreiben..
__________________
PHP.de - Baud (→α) - PHP.de Repo - Bookmarks
Will code for gifts | BDD | HeForShe
tr0y ist offline  
Alt 30.07.2010, 19:18  
fab
Erfahrener Benutzer
 
Registriert seit: 28.07.2010
Beiträge: 3.075
PHP-Kenntnisse:
Fortgeschritten
fab kann auf vieles stolz seinfab kann auf vieles stolz seinfab kann auf vieles stolz seinfab kann auf vieles stolz seinfab kann auf vieles stolz seinfab kann auf vieles stolz seinfab kann auf vieles stolz seinfab kann auf vieles stolz seinfab kann auf vieles stolz sein
Standard

Zitat:
Zitat von tr0y Beitrag anzeigen
- das erstellen von validen XSLX-Dokumenten oder den COM-Dienst
Wenn es auch XLS sein darf, gibt es hier was feines:
MS-Excel Stream Handler (xls, spreadsheet, excel reader, ms-excel stream handler) - PHP Classes

Damit lassen sich Arrays direkt in Excel-Tabellen speichern, etwa so:

PHP-Code:
$table = array(
       
=> array(
            
"column1" => "value1",
            
"column2" => "value2",
            
"column3" => "value3",
        ),

        
=> array(
            
"column1" => "value4",
            
"column2" => "value5",
            
"column3" => "value6",
        ),

//        ...
);
file_put_contents('xlsfile://foo.xls'$table); 
fab ist offline  
 


Themen-Optionen


Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
[Erledigt] geänderte Daten übergeben ? danyh Datenbanken 3 17.03.2010 12:00
Website in XML-Format öffnen und Daten in DB schreiben...aber nur wie ? Oli Krause PHP Tipps 2009 11 22.03.2009 12:36
[Erledigt] sql daten für einen kunden auslesen/ändern im Formular PHP Tipps 2005-2 3 12.10.2005 08:36
Daten aus mehreren Tabellen holen Datenbanken 0 19.09.2005 17:14
[Erledigt] Daten auslesen und ändern Datenbanken 2 17.09.2005 19:28
phpMyAdmin Daten exportieren als ISO-8859-1 Format. DonTermi Datenbanken 0 15.09.2005 10:24
Daten eintragen und auslesen Rettungsdackel Datenbanken 0 14.09.2005 16:29
einzelne Daten aufrufen von .csv PHP Tipps 2005-2 7 23.08.2005 08:28
Überprüfung auf Herkunft der Daten PHP Tipps 2005-2 8 04.08.2005 12:01
[Erledigt] Daten auslesen - Daten hinzufügen - Daten Speichern PHP Tipps 2004-2 1 04.12.2004 10:59
array_push nur in begrenzter Anzahl ausführen ? PHP Tipps 2004 2 07.09.2004 09:05
[Erledigt] Modales Fenster zur Eingabe von Daten HTML, Usability und Barrierefreiheit 0 22.06.2004 12:52
Übertragung von Daten zwischen Anmeldeschritten PHP Tipps 2004 6 18.06.2004 20:32
HILFE: Column count doesn't match value count at row 1 Datenbanken 17 12.06.2004 16:45
daten werden nicht übergeben PHP Tipps 2004 1 04.06.2004 12:03

Besucher kamen über folgende Suchanfragen bei Google auf diese Seite
ping1.mquadr.at/ip.php, ping1.mquadr.at, php über ip adresse gerät ansprechen, wer ist http:/ping1.mquadr.at/ip.php, excelreader php begrenzte anzahl, spreadsheet_excel_reader xlsx dateien, daten in xml per php schreiben, ipadresse weitergeben php

Alle Zeitangaben in WEZ +2. Es ist jetzt 17:50 Uhr.




Powered by vBulletin® Version 3.7.2 (Deutsch)
Copyright ©2000 - 2014, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO 3.2.0
Aprilia-Forum, Aquaristik-Forum, Liebeskummer-Forum, Zierfisch-Forum, Geizkragen-Forum