Zum Inhalt springen

Mod_Rewrite bei externener Datenbank

Erstellt am 7. November 2005 · 1 Antwort · letzte Antwort am 8. November 2005

Tags: URLs & Routing, PHP, Frage

Karsten Windfelder ·

Hallo zusammen,

habe folgende Aufgabe vor mir:

Nach erfolgreicher Umstellung einer vorhandenen Website mit diversen MySQL-Tabellen habe ich inzwischen Mod_Rewrite eingestellt. Das funktioniert auch soweit mit den normalen Seiten.

Wie stelle ich es nun an, dass meine alten PHP-Scripte ebenfalls gerewritet werden? Habe da schon einiges manuell hinbekommen, stoße aber nun an eine Grenze.

Meine alte Website hatte eine Blätterfunktion, nach fünf Datensätzen konnte man zu den nächsten 5 Datensätzen, dazu auch ganz ans Ende und an den Anfang springen. Diese Blätterfunktion hat in PHP mit der URL-Weitergabe von Parametern funktioniert. Wenn ich nun Dateien mit mod_rewrite umschreibe erhalte ich HTML-Dateien und kann keine Parameter mehr weitergeben.

Wie kann ich das lösen?

Hier ein Code-Schnipsel:

<a href="<?php printf("%s?pageNum_rs_interviews_s_firma=%d%s", $currentPage, max(0, $pageNum_rs_interviews_s_firma - 1), $queryString_rs_interviews_s_firma); ?>"><img src="fileadmin/images/alt/previous.gif" width="14" height="13" border="0" alt="" /></a>

Danke für jede Hilfe,

Gruß
Karsten

laptop24 ·

Nun.

Das PHP-Script kann die URL parsen. Es gibt zwar keine GET-Parameter mehr ($_GET ist leer), aber im $_REQUEST, mindestens aber im $_SERVER steht doch die URL.

Nun kann die eingelesen werden und die Parameter zu Fuß rausgelutscht werden.

href="<?php printf("%s?pageNum_rs_interviews_s_firma=%d%s", $currentPage, max(0, $pageNum_rs_interviews_s_firma - 1), $queryString_rs_interviews_s_firma); ?>"

Wird wohl sowas ausgeben:

href="script.php?pageNum_rs_interviews_s_firma=0trallala"

Rewrite macht dann sowas draus:

href="/pageNum_rs_interviews_s_firma/0trallala/script.html"

Na... nun sollte es nicht schwer sein, die URL z.B. mit strToken() in Einzelteile zu zerlegen. Voila...

MfG, Lars Thalheim