Seite 1 von 1

PHP _GET in Python?

Verfasst: Freitag 31. Oktober 2008, 16:23
von ButterflyEffect
Hi

Ich suche die Pythonalternative zu $id = $_GET['id']; von PHP...
also ne id aus der URL rauslesen...
könnte mir jemand helfen?
danke

Verfasst: Freitag 31. Oktober 2008, 16:50
von derdon
Wie erstellst du deine Seiten? CGI? Ein Framework? Ohne solche Informationen kann man dir nicht weiterhelfen.

Verfasst: Freitag 31. Oktober 2008, 16:59
von Y0Gi
Bei Werkzeug wäre es `request.args.get('foo')`, bei Paste `request.GET.get('foo')`, bei CherryPy würde der Wert als Argument an die jeweilige Controller-Methode übergeben werden, bei Verwendung des `cgi`-Moduls gibt's iirc eine zu instanziierende `FieldStorage`-Klasse etc.

All das sind APIs, die auf das per *CGI, WSGI oder sonstwie übergebene Mapping an Headern und Umgebungsvariablen sowie den Request-Body zugreifen.

Verfasst: Samstag 1. November 2008, 09:22
von Leonidas
Bei Django wäre es übrigens genauso wie bei Paste, wenn ich mich richtig erinnere.

Verfasst: Montag 3. November 2008, 10:37
von ButterflyEffect
habe cgi....

form = cgi.FieldStorage()

das läuft danke...

hab nun aber ein neues Problem...
ich habe 2 verschiedene Buttons (Change und Search)
ich dachte ich könne nun die Buttons mit value definieren und dan so rauslesen welcher button gedrückt wurde...aber ich bekomme immer einen keyerror, beim herauslesen eines Buttonvalues...

buttonwert = form['changeF'].value

geht das so nicht, oder hab ich einfach nur nen falschen code?

Verfasst: Montag 3. November 2008, 12:15
von ButterflyEffect
hab ne lösung gefunden...einfach ein "try" um den aufruf, dann crashed es nicht mehr

Verfasst: Montag 3. November 2008, 14:42
von mkesper
Aber darauf achten, dass du nur den KeyError durch Except abfängst. Generelle try...except-Statements können ziemlich schnell für Grübelei sorgen.

Verfasst: Montag 3. November 2008, 17:31
von Y0Gi
Du kannst auf ein dict auch mit ``einDict.get('schluessel', 'Wert-wenn-nicht-gefunden')`` zugreifen und so einen ``KeyError`` umgehen.

Warum benutzt du für "Change" und "Search" nicht zwei verschiedene Formulare? Von mehreren Buttons pro Formular habe ich noch nie besonders viel gehalten, aber das scheint - insbesondere bei Einsteigern - recht populär zu sein.