Seite 1 von 1

Daten aus PHP übernehmen

Verfasst: Freitag 29. April 2016, 21:50
von MaxL
Hallo zusammen,
ich habe in Python ein (für einen Anfänger) recht nettes Programm geschrieben und ein Kollege hat mir in PHP/JavaScript/Html ein Frontend gebaut.
Meine Frage ist: Wie bekomme ich nun die Werte aus seinem PHP-Statement bei mir in Python?
Sein Statement:

Code: Alles auswählen

$data = Array(
		"event" => "saveEingaben",
		"RKdefID" => $_POST["RKdefID"],
		"eingabe_1" => $_POST["eingabe_1"],
		"eingabe_2" => $_POST["eingabe_2"],
		"eingabe_3" => $_POST["eingabe_3"]
	);
Wie lautet meines in Python?
Es wäre toll, wenn Ihr Eure Antworten für einen blöden kleinen Vollhonk-Anfänger verständlich formulieren könntet (nein, sorry, no time 2rtfm ...). Last Baustelle for complete :) :) :)

Re: Daten aus PHP übernehmen

Verfasst: Freitag 29. April 2016, 22:28
von MaxL
PS: so geht es weiter ...

Code: Alles auswählen

$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, "localhost/cgi-bin/Python34/rksm_start_3.cgi");
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_POST, true);
curl_setopt($ch, CURLOPT_POSTFIELDS, $data);
$contents = curl_exec($ch);
curl_close($ch);

Re: Daten aus PHP übernehmen

Verfasst: Freitag 29. April 2016, 22:52
von BlackJack

Re: Daten aus PHP übernehmen

Verfasst: Samstag 30. April 2016, 09:40
von noisefloor
Hallo,

CGI ist aber schwer altbacken. Funktioniert zwar noch, setzt aber kaum noch einer ein. De-facto Standard für Webapplikation in Python ist WSGI. Dafür gibt es auch jede Menge Frameworks, da das ganze einfach und komfortable machen. Für dein Fall würden sich ziemlich sicher Bottle oder Flask anbieten.

Gruß, noisefloor

Re: Daten aus PHP übernehmen

Verfasst: Samstag 30. April 2016, 12:43
von MaxL
Hallo zusammen,
danke für die Antworten. Aber ich blicks einfach nicht. Ich habe das ja schon mit CGI probiert. Aber irgendwie funktioniert das nicht .. :K

Code: Alles auswählen

import cgi
cgitb.enable()
form = cgi.FieldStorage()
RKdefID = form.getvalue('RKdefID')
eing_passend = form.getvalue("eingabe_1")
...

Re: Daten aus PHP übernehmen

Verfasst: Samstag 30. April 2016, 13:41
von BlackJack
@MaxL: Was heisst „funktioniert nicht“? Explodiert der Rechner? Stirbt die Katze vom Nachbarn? (Falls ja, bitte das Programm nicht mehr als 9× laufen lassen ;-)) Fehlermeldungen? Wenn ja welche?

Re: Daten aus PHP übernehmen

Verfasst: Samstag 30. April 2016, 20:18
von MaxL
Hi BlackJack,
Ich bekomme gar nichts. Ich habe das cgi einfach mal umbenannt. Mein Frontend verhält sich exakt gleich. Was mich natürlich vor die Frage stellt: Warum das? Vermutlich wird es nicht erkannt. Muss ich es als .cgi benennen oder geht auch .py?
Ein ganz normales cgi habe ich längst gebaut, da läuft. Hier wird aber ein Array übergeben und ich weiß nicht, an welcher Stelle es sich somit anders verhält ...
BG.

Re: Daten aus PHP übernehmen

Verfasst: Samstag 30. April 2016, 21:15
von BlackJack
@MaxL: Wenn Du ein ”normales cgi” laufen hast, dann verstehe ich die Frage nicht ob man die Endung ändern muss. Welchen Webserver verwendest Du denn? Da wird ja irgendwo eingestellt wie CGI läuft. Also ob das bestimmte Dateinamensendungen braucht, oder nur in einem bestimmten Ordner funktioniert, oder…

Wo wird da ein Array übergeben? Das sind soweit ich das sehe alles Einzelwerte die als POST-Daten übermittelt werden.

Die Dokumentation vom `cgi`-Modul hat einen Abschnitt über Fehlersuche.