Varialenübergabe ohne URL-Nutzung

Hallo,

ich habe eine MySQL-DB, die ich mit Hilfe von PHP anzeigen lasse.
Die Lösung ist bisher, das ich eine PHP-Datei habe, die abhängig von
mehreren in der URL übergebenen Variablen entsprechende Tabellen anzeigt.

Jetzt habe ich aber mehrfach im Netz gelesen, das man Variablenübergaben
per URL nicht macht/machen sollte.

Die Lösung per Link im Navi-Menü die Anzeige der Tabellen zu steuern
würde ich gern beibehalten. Wie könnte man das ganze jetzt ohne
URL-Variablen machen und nicht für jede Abfrage eine eigene PHP-Datei
schreiben?

Gruß
Alexander
Alexander [ Mi, 25 April 2007 09:46 ] [ ID #1697466 ]

Re: Varialenübergabe ohne URL-Nutzung

* Alexander wrote:

> ich habe eine MySQL-DB, die ich mit Hilfe von PHP anzeigen lasse.
> Die Lösung ist bisher, das ich eine PHP-Datei habe, die abhängig von
> mehreren in der URL übergebenen Variablen entsprechende Tabellen anzeigt.
>
> Jetzt habe ich aber mehrfach im Netz gelesen, das man Variablenübergaben
> per URL nicht macht/machen sollte.
>
> Die Lösung per Link im Navi-Menü die Anzeige der Tabellen zu steuern
> würde ich gern beibehalten. Wie könnte man das ganze jetzt ohne
> URL-Variablen machen und nicht für jede Abfrage eine eigene PHP-Datei
> schreiben?

Verstehe nicht ganz dein Problem, aber:
- Du könntest Variablen aus Formularen per method="post" versenden statt
"get".
- Du könntest Variablen in einer Session speichern
- Du könntest mod_rewrite verwenden.

B.

--
BM Computer-Services, Bergmannstr. 66, 10961 Berlin
Webdesign, Internet, Layout und Grafik
Tel.: 030/20649400, mobil 0175/7419517, Fax: 030/20649401
Web: http://www.bmservices.de, eMail: kontakt [at] bmservices.de
Bernd Muent [ Mi, 25 April 2007 11:05 ] [ ID #1697467 ]

Re: Varialenübergabe ohne URL-Nutzung

Alexander schrieb:
> Hallo,
>
> ich habe eine MySQL-DB, die ich mit Hilfe von PHP anzeigen lasse.
> Die Lösung ist bisher, das ich eine PHP-Datei habe, die abhängig von
> mehreren in der URL übergebenen Variablen entsprechende Tabellen anzeigt.
>
> Jetzt habe ich aber mehrfach im Netz gelesen, das man Variablenübergaben
> per URL nicht macht/machen sollte.
>
> Die Lösung per Link im Navi-Menü die Anzeige der Tabellen zu steuern
> würde ich gern beibehalten. Wie könnte man das ganze jetzt ohne
> URL-Variablen machen und nicht für jede Abfrage eine eigene PHP-Datei
> schreiben?
>
> Gruß
> Alexander

Bei Links im Navigationsmenü wirst du um irgendeine Form der
URL-basierten Steuerung nicht herumkommen. Aber statt der direkten
Variablen könnte der Link einen Optionswert übergeben. Für ein simples
Beispiel (Mitgliederliste in einem Forum nach Posts sortiert)...

Statt:

table.php?table=forum_users&fields=uid+name+posts&order=post s+desc

table.php?action=post_rank

Es ist ja anzunehmen, dass es nicht soviele verschiedene
Anzeigemöglichkeiten gibt; die könnten also fest einprogrammiert im
Programm stehen und über den "action"-Parameter auswählbar sein. Das
macht die URL lesbarer und isoliert den Benutzer besser von der Datenbank.

Oder wie schon vorgeschlagen, mod_rewrite. Da wären dann noch viel
bessere Sachen möglich, wie:

/forum/members/post-ranking

Was dann von mod_rewrite auf die PHP-Datei umgeleitet wird, die dann an
diesem Pfad erkennt, was genau angezeigt werden soll.
Christoph Burschka [ Mi, 25 April 2007 11:26 ] [ ID #1697468 ]

Re: Varialenübergabe ohne URL-Nutzung

Alexander schrieb:

> Jetzt habe ich aber mehrfach im Netz gelesen, das man Variablenübergaben
> per URL nicht macht/machen sollte.

Schmarrn. Dieses Werkzeug ist nicht das richtige für *jedes* Problem,
aber es gibt Probleme, für die ist es eindeutig das richtige Werkzeug.

Grüße, Matthias

--
http://www.trullala.de
--
Der Trend geht ganz eindeutig zur Zweitsignatur.
do.not.REMOVETHAT [ Mi, 25 April 2007 12:20 ] [ ID #1697469 ]
PHP » de.comp.lang.php.datenbanken » Varialenübergabe ohne URL-Nutzung

Vorheriges Thema: PHP Timestamp (Integer) als Datum in Oracle verwenden
Nächstes Thema: Apache2+PHP5+mySQL führtzu leerem Schirm