Du lässt dir per mod_rewrite
http://www.modrewrite.de/mod-rewrite...statische-url/
den Namen der Seite zurückgeben und machst dann eine Reversesuche auf die ID. Also das Array durchlaufen und beim matchenden 'name' die ID als gesuchte ID nehmen.
Hallo Forum,
meine Page hat eine home.php als Startseite.
Die Buttons werden aus einem Array gebildet:
Je nach welcher Button gedrückt wird, wird die Datei aus dem Array includet.PHP-Code:$auswahl = array(
array('file' => 'home3.php', 'name' => 'HOME'),
array('file' => 'brautservice.php', 'name' => 'Brautservice'),
array('file' => 'reserve.php', 'name' => 'Teenager'),
array('file' => 'produkte.php', 'name' => 'Produkte'),
array('file' => 'workshop.php', 'name' => 'Workshops'),
array('file' => 'Impressum.php', 'name' => 'Impressum')
);
Der Link im Button sieht dann so aus:
Leider haben die Suchmaschienen diese Art der Links nicht so gerne.PHP-Code:<li><a href="home.php?id=5"><strong>Impressum</strong></a></li>
Würde es gerne denen etwas einfacher machen wollen. Leider habe ich es noch nicht entdeckt, wie ich es machen sollte. Schön wäre es wenn ich es so gestalten könnte, ohne alle Pages neu machen zu müssen.
Weiß jemand wie ich es realisieren könnte? Für Hilfe wäre ich dankbar.PHP-Code:<li><a href="home.php/Impressum"><strong>Impressum</strong></a></li>
Du lässt dir per mod_rewrite
http://www.modrewrite.de/mod-rewrite...statische-url/
den Namen der Seite zurückgeben und machst dann eine Reversesuche auf die ID. Also das Array durchlaufen und beim matchenden 'name' die ID als gesuchte ID nehmen.
Schau mal, hier findest Du dazu ein Tutorial von Andreas:
http://www.traum-projekt.com/forum/7...chen-urls.html
Hallo Forum,
das ist leider nicht das was ich realisieren möchte. Bei den Artikeln habe ich das so verstanden, daß die aufgerufene Page nur umbenannt wird. Und das war nicht meine Frage.
Nochmals zur Veranschaulichung: So habe ich es bisher gelöst.
Es wird die Page home.php aufgerufen, mit dem includeten Teil z.B. "Impressum". Das möchte ich auch weiterhin machen. Nur sollte die URL folgendermaßen aufgebaut sein.PHP-Code:<div id="navi"><ul>
<li class="aktive"><a href="home.php?id=HOME"><strong class="aktiva_z">HOME</strong></a></li>
<li><a href="home.php?id=Brautservice"><strong>Brautservice</strong></a></li>
<li><a href="home.php?id=Teenager"><strong>Teenager</strong></a></li>
<li><a href="home.php?id=Produkte"><strong>Produkte</strong></a></li>
<li><a href="home.php?id=Workshops"><strong>Workshops</strong></a></li>
<li><a href="home.php?id=Impressum"><strong>Impressum</strong></a></li>
</ul>
</div>
Ist das so möglich?PHP-Code:<div id="navi"><ul>
<li class="aktive"><a href="home.php?id=HOME"><strong class="aktiva_z">HOME</strong></a></li>
<li><a href="home.php/Brautservice"><strong>Brautservice</strong></a></li>
<li><a href="home.php/Teenager"><strong>Teenager</strong></a></li>
<li><a href="home.php/Produkte"><strong>Produkte</strong></a></li>
<li><a href="home.php/Workshops"><strong>Workshops</strong></a></li>
<li><a href="home.php/Impressum"><strong>Impressum</strong></a></li>
</ul>
</div>
Doch das ist genau was du beschreibst
http://127.0.0.1/test/modrewrite/home.php/hallo123
PHP-Code:<?php
echo '<pre>', print_r( $_GET, 1 ), '</pre>';Du brauchst nur die zwei Zeilen aus dem von mir verlinkten Artikel entsprechend anpassen.Code:Array ( [id] => hallo123 )
Hallo chorn,
weiß wirklich nicht was ich nicht verstehe.
Das ist die Adresse:
Das Wort Impressum benötige ich um die Page Home.php mit dem Impressum zu füllen.PHP-Code:http://nicole-mk/pages/Home.php/Impressum
Und das GET bringt bei mir nicht das Ergebnis.
Das ist das ErgebnisPHP-Code:var_dump($_GET,1);
Bei der ZeilePHP-Code:array(0) {
}
int(1)
greift das.PHP-Code:http://nicole-mk/pages/Home.php?id=Impressum
Oder muß ich das obere Beispiel mit String-Befehlen erst auseinandernehmen damit ich es weiterverarbeiten kann?
Wo ist denn der Teil für mod_rewrite, der dir die URL umbiegt?
Hallo Schorn,
ich glaube, daß ich es nach langem studierens begriffen habe.
home.php([^/]*) = ist eine Gruppe mit beliebig viele Zeichen, jedoch kein Slash. Diese Gruppe wird in $1 gespeichert (wenn es sich um RewriteRule handelt). Die kann ich dann mit $_GET, 1 abholen und verarbeiten.PHP-Code:# hier die Umwandlung "Schrägstrich - nachfolgend ein Begriff"
RewriteEngine on
RewriteRule ^home.php([^/]*) home.php
Aufgerufen wird aber nur home.php.
Habe ich das so richtig verstanden?
Wieso denn kein Slash? Deinem Schema nach willst du den Slash doch hinter der home.php haben. Und du musst $1 schon irgendwo im Ziel eintragen, sonst passiert ja nichts. Hast du dich mal mit den Basics von mod_rewrite beschäftigt? Die Beispiele durchprobiert?
Hallo chorn,
werde also doch noch weiter studieren müssen. Benötige hierzu vielleicht noch Nachhilfe...
Hallo chorn,
ich gebe auf. Ich finde keine für mich passende Erläuterung. Dann werde ich in der alten hergebrachten Art und Weise meine Site weiter bearbeiten. Vielen Dank für die bisherige Mühe.
![]()
Ich verstehe dein PRoblem nicht, hast du die Beispiele alle durchgearbeitet? Hast du dich mal mit Regexp befasst? Du brauchst doch nur das
durch deine Syntax zu ersetzen.Code:^seite_([0-9]+).html$
Hallo chorn,
das war mein letzte Versuch:
Der Link sieht so aus:
.htaccessPHP-Code:http://nicole-mk/pages/Home.php?id=Teenager
Hatte es so verstanden:PHP-Code:# hier die Umwandlung "hinter der id="Begriff hinter Home.php setzen
RewriteEngine On
RewriteBase /
RewriteRule ^pages/Home.php?id=([.*]+)$ pages/Home.php/$1 [L]
In den Klammern ist eine Gruppe. Diese Gruppe ist die Gruppe $1. Diese Gruppe soll dann nach dem Schrägstrich eingesetzt werden. Leider funktioniert das nicht. Kann es vielleicht sein, daß mein XAMPP unter Win 7 läuft?
Jetzt leitest du ja mit den Parametern auf ein Verzeichnis um. Deine Syntax wäre doch
"leite alles nach home.php/ auf home.php?id= um"
Code:^home.php/([a-zA-Z]+)$ home.php?id=$1
Hallo chorn,
ich glaube, daß ich mich missverständlich ausgedrückt habe.
Ich rufe auf : z.B.
und zu sehen sollte es so sein:PHP-Code:http://nicole-mk/pages/Home.php?id=Impressum
oder geht es so nicht?PHP-Code:http://nicole-mk/pages/Home.php/Impressum
Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)