PHP Kurze Links mit Hauptadresse?Command
-
Ich sehe bei vielen Seiten immer mehr kurze PHP Links bei denen dann nur noch die Seite z.B. www.hallo.de/index.php?aktion drangehängt wird. Diese Option wäre sehr hilfreich für meine Site da dann der Server versteckt bleibt...
Wie funktioniert das?P.S. Ich hatte diese Frage irgendwie schon mal gesehen aber finde sie nicht mehr.
-
Die Zeichenkette hinter dem Fragezeichen wird von PHP als GET-Parameter interpretiert und dementsprechend werden die Informationen in die superglobale Variable $_GET gestopft.
Wenn du z.B. folgende URL hast: www.aaa.de/index.php?aktion=news , dann kannst du auf den Parameter mit dem $_GET-Array im index.php-Skript wie folgt zugreifen:
<?php $aktion = (string)$_GET['aktion']; switch( $aktion ) { case 'news': include( ... ); break; //include od. ne Funktion aufrufen... case 'artikel': inlcude( ... ); break; case 'impressum': include( ... ); break; //etc. default: //Error ausgeben oder umleiten? } ?>
Ein verwandtes Thema hierzu http://www.sitepoint.com/article/search-engine-friendly-urls
-
Webzeugs FAQ
MfG SideWinder
-
Ich glaube er meint eher was anderes.
nicht links wie
www.foo.de/index.php?aktion=news
www.foo.de/index.php?aktion=download
www.foo.de/index.php?aktion=faqsondern eben
www.foo.de/index.php?news
www.foo.de/index.php?download
www.foo.de/index.php?faqZugriff darauf...
Also wenn man das so macht gibts ne Variable (bsw) $_GET[news] ohne Wert.Geprüft wird dann mit
if ( isset($_GET[news]) ) news_ausgeben();
Oder dabei wird manuel geparset oder es wird mit mod_rewrite vom webserver automatisch in index.php?site=news umgeschrieben...
-
Ja das letzte meinte ich. Dnke für die Hilfe. Aber wo kommt bei der letzten Lösung die Icludierung der Links vor?
-
Wie meinen?
-
das musst du schon noch selbst machen:
if ( isset($_GET[news]) ) include("news.bla");
-
-Foo- schrieb:
das musst du schon noch selbst machen:
if ( isset($_GET[news]) ) include("news.bla");
Korrigiere:
if ( isset($_GET['news']) ) include('news.bla');
Sonst gibt's ne Notice :p