hotti: PHP-Script als "Gateway" zu einer externen MySQL-DB ?

Beitrag lesen

hi,

Ich soll dem Admin des DB-Servers das Script geben; er will es dann "überprüfen" (wie auch immer dieses aussehen soll) und dieser wird es dann auf dem DB-Server "bereitstellen".
Bevor ich jetzt geprügelt werde: DAS ist der Originalwortlaut des Admins.

Ok, lass den machen, er ist für die Policy zuständig und die kann den Zugriff über Port 80 genauso regeln wie über Port 3306.

Fakt ist das ich um die "wir schicken Daten frei durchs Web mit einer "Scriptgateway-Lösung" wohl nicht herumkommen werde.

Machen ;)

POST, Daten in Richtung Server: Ein Perl-Script, was den POST entgegennimmt, kann einen serialisierten Stream direkt aus STDIN lesen (was in PHP nicht machbar ist). Auch was den Serializer betrifft, hier würde ich eine Perl-Lösung bevorzugen, der Perl-Serializer Storable::freeze() arbeitet auf Byte-Ebene, ist damit unabhängig von irgendwelchen Zeichenkodierungen und außerdem sehr performant. Mit Storable::thaw() wird eine Datenstruktur aus dem Stream zurückgewonnen.

GET, Daten vom Server holen: Inwieweit der PHP-Serializer mit NULL-Werten umgehen kann, weiß ich (noch) nicht, Perl's Storable::freeze() kann das. Auch hier würde ich mit reinen Binaries arbeiten, also eher mit Perl.

Ansonsten: Baue serverseitig eine Kontrollstruktur für die Parameter und hinterlege dazu klar definierte SQL-Statements, welche die Responses ausliefern. Also keine SQL-Statements als text/plain per HTTP senden ;)

Viel Erfolg!

Btw., ich habe für die nächsten Tage auch sowas ähnliches zu machen, aus einer lokkal vorliegenden Datei sind Daten zu parsen, in Records aufzuarbeiten und per HTTP zu übertragen. Ca. 20.000 Records, geschätzte 2..3MB. Das wird ein POST...

Hotti