Supportnet / Forum / Skripte(PHP,ASP,Perl...)
URL mit Ergänzungen
Frage
Hallo zusammen,
kann mir jemand einen Überblick darüber verschaffen, was es häufig damit auf sich hat, wenn auf guten Websites mit PHP Links zu finden sind, die nicht nur auf eine Datei verweisen, sondern noch immer etwas dahinter haben.
Etwa so: www.meineseite.de/insert.php?id=4789349
oder auch so
www.meineseite.de/insert.php?abcde=fghij
Wie realisiere ich diese Art von Verlinkung? Was ist der Hintergrund? Vorteile? Nachteile? Was brauche ich dazu? Einfach mal einen Überblick bekommen und wissen warum das so gehandhabt wird.
Vielen, vielen Dank für alle Beiträge!
Neils
Antwort 1 von semi
Hi,
das ganze gehört zum CGI-Protokoll, Klartext: Spielregeln für die Kommunikation zwischen Browser und Server.
In dem Fall, wo hinter einer URI weitere Parameter stehen, handelt es sich um sogenannte GET-Anforderung. Dabei werden zusätzliche Parameter, hinter einem Ausrufezeichen, in Form von Name-Wert-Paaren angegeben.
z.B.
skript.php?vorname=Bart&nachname=Simpson
Die Name-Wert-Paare werden wieder durch & voneinander getrennt.
Die Namen und Werte müssen noch paar Regeln erfüllen.
- Keine Leerzeichen
- Keine Sonderzeichen
Klartext: Sonderzeichen, also alles ausser reinen ASCII-Buchstaben und Ziffern, müssen codiert werden. Man (Kind und Frau auch) spricht von einer URI-Codierung.
z.B: der folgende Text
Eine Smith & Wesson übertrumpft vier Asse
wird in
Eine+Smith+%26+Wesson+%FCbertrumpft+vier+Asse
codiert.
Alle Leerzeichen wurden durch + ersetzt und Sonderzeichen wie & und die deutschen Umlaute durch % gefolgt vom ASCII-Code der entsprechenden Buchstaben.
Suche auch mal nach "CGI-Grundlagen" über eine Suchmaschine Deiner Wahl.
Sollte für den Anfang reichen. Ich hoffe, das hilft Dir ein bißchen.
Hier vielleicht noch ein einfaches Javascript, das Du mit Parametern "füttern" kannst.
Speichere es als formdump.html ab und rufe es im IE auf.
Rufe es mal mit paar Parametern auf.
Gruß,
Michael
das ganze gehört zum CGI-Protokoll, Klartext: Spielregeln für die Kommunikation zwischen Browser und Server.
In dem Fall, wo hinter einer URI weitere Parameter stehen, handelt es sich um sogenannte GET-Anforderung. Dabei werden zusätzliche Parameter, hinter einem Ausrufezeichen, in Form von Name-Wert-Paaren angegeben.
z.B.
skript.php?vorname=Bart&nachname=Simpson
Die Name-Wert-Paare werden wieder durch & voneinander getrennt.
Die Namen und Werte müssen noch paar Regeln erfüllen.
- Keine Leerzeichen
- Keine Sonderzeichen
Klartext: Sonderzeichen, also alles ausser reinen ASCII-Buchstaben und Ziffern, müssen codiert werden. Man (Kind und Frau auch) spricht von einer URI-Codierung.
z.B: der folgende Text
Eine Smith & Wesson übertrumpft vier Asse
wird in
Eine+Smith+%26+Wesson+%FCbertrumpft+vier+Asse
codiert.
Alle Leerzeichen wurden durch + ersetzt und Sonderzeichen wie & und die deutschen Umlaute durch % gefolgt vom ASCII-Code der entsprechenden Buchstaben.
Suche auch mal nach "CGI-Grundlagen" über eine Suchmaschine Deiner Wahl.
Sollte für den Anfang reichen. Ich hoffe, das hilft Dir ein bißchen.
Hier vielleicht noch ein einfaches Javascript, das Du mit Parametern "füttern" kannst.
Speichere es als formdump.html ab und rufe es im IE auf.
<html><head>
<script type="text/javascript">
query = location.search.substring(1,location.search.length).split("&");
for(var i=0; i<query.length; i++) {
nv = query.split("=");
document.write(nv[0] + "=" + nv[1] + "<br>");
}
</script>
</head>
<body></body></html>Rufe es mal mit paar Parametern auf.
Gruß,
Michael
Antwort 2 von semi
Korrektur: Dabei werden zusätzliche Parameter, hinter einem Fragezeichen, in Form von Name-Wert-Paaren angegeben.
Mannomann... :)
Mannomann... :)
Antwort 3 von Neils
Soweit so gut, danke schon mal.
Dennoch möchte ich gerne wissen, wie ich damit jetzt meine Dateien verlinken kann oder einbinden kann.
Ein Beispiel sollte hier helfen:
Nehmen wir einfach mal die Seite www.deutschland.de
Dort findet man die Leiste zum Aussuchen der Sprache.
Im Link verbirgt sich hinter der Datei folgendes:
http://www.deutschland.de/home.php?lang=2
Was geschieht an dieser Stelle, wie wird nun eine neue Seite aufgerufen, wohin wird dieser Zusatz übergeben, wer nimmt es auf???
Danke für Eure Hilfe
Niels
Dennoch möchte ich gerne wissen, wie ich damit jetzt meine Dateien verlinken kann oder einbinden kann.
Ein Beispiel sollte hier helfen:
Nehmen wir einfach mal die Seite www.deutschland.de
Dort findet man die Leiste zum Aussuchen der Sprache.
Im Link verbirgt sich hinter der Datei folgendes:
http://www.deutschland.de/home.php?lang=2
Was geschieht an dieser Stelle, wie wird nun eine neue Seite aufgerufen, wohin wird dieser Zusatz übergeben, wer nimmt es auf???
Danke für Eure Hilfe
Niels
Antwort 4 von robbie17
es gibt statische und dynamische webseiten
erstere werden so angezeigt wie sie auf dem server rumliegen
also immer gleich - bei jedem aufruf
dynamische webseiten sind nicht auf dem server gespeichert
sie existieren gar nicht bevor sie aufgerufen werden
sie werden erst beim aufruf erzeugt
meistens von einem skript das auf dem server liegt
in deinem beispiel heißt es home.php
der sinn dahinter ist daß die seite
den bedürfnissen des surfers angepaßt werden kann
was der surfer sehen will wird dem skript
oft über variablen übermittelt
deine genannte seite ist ein prima beispiel dafür
je nach dem welchen wert du der variablen lang gibst
verändert sich die sprache in der ausgabe
auf dem server ist aber nur dieses eine skript
nicht viele verschiedene seiten
ein paar erste infos dazu
erstere werden so angezeigt wie sie auf dem server rumliegen
also immer gleich - bei jedem aufruf
dynamische webseiten sind nicht auf dem server gespeichert
sie existieren gar nicht bevor sie aufgerufen werden
sie werden erst beim aufruf erzeugt
meistens von einem skript das auf dem server liegt
in deinem beispiel heißt es home.php
der sinn dahinter ist daß die seite
den bedürfnissen des surfers angepaßt werden kann
was der surfer sehen will wird dem skript
oft über variablen übermittelt
deine genannte seite ist ein prima beispiel dafür
je nach dem welchen wert du der variablen lang gibst
verändert sich die sprache in der ausgabe
auf dem server ist aber nur dieses eine skript
nicht viele verschiedene seiten
ein paar erste infos dazu

