PHP Webpage IDs

F

flokuek

Gast
Guten Morgen zusammen,

ich bin momentan dabei mit Bootstrap eine Seite aufzubauen. Nun habe ich meine index.php komplett fertig gestellt, so wie ich es haben möchte :-)
Aus Erfahrung von Wordpress weiß ich das, wenn ich in der Navigationsbar auf einen Reiter klicke nicht ein neue komplett neue Seite Aufgerufen wird, sondern das man den einzelnen Webseiten eine ID mitgibt.
"Ich hoff ich konnt mich gut ausdrücken" :-P

z.B. gehe ich auf www.beispiel.de

dann soll in meinem falle die index.php als Startseite dienen. Wenn ich dann z.B. auf "Kontakt" klicke, soll in der URL nicht www.beispiel.de/kontakt stehen, sondern www.beispiel.de/index.php?id= ...

Wie kann ich die realisieren? Ich hoffe ihr könnt meine Frage verstehen.

Lieben Gruß FLo
 
Du fragst im Code den $_GET['id']-Parameter ab und lädst dann, je nachdem welchen Wert dieser hat, den Content.
 
...und kombinierst selbiges noch mit mehr oder weniger komplexen Rewrite-Regeln in der .htaccess.
 
Okay ... also könnte ich es folgendermaßen machen?:


Als Beispiel: Ich erstelle folgende HTML tabelle in index.php
Code:
<table>
<tr><td>Menu</td></tr>
<tr><td>News</td></tr>
<tr><td>Members</td></tr>
</table>

Dann füge ich noch den PHP Code ein:

PHP:
<?php
$id = $_REQUEST['id'];
switch($id) { 
default: include('main.php');
break;
case "News": include('news.php');
break;
case "Members": include('members.php');
break;
}
?>

Würde das theoretisch so gehen??
 
Du musst natürlich Links verwenden, die den passenden GET-Parameter übergeben.
Außerdem: PFUI Table!
 
Jein.

Wenn du nen $_GET-Parameter erwartest, kannst du auch gleich nach $_GET-Fragen und musst nicht $_REQUEST verwenden. Dann frag vor deinem Switch ab, ob der Parameter überhaupt gesetzt und gefüllt ist (isset, empty) so vermeidest du Fehlermeldungen bzw. Warnungen. Das Umschreiben auf ne Variable (bei dir $id) is nicht unbedingt nötig, aber wenns dir beim Lesen hilft, ist's okay.

EDIT: Richtig. Ohne Links kommst du da natürlich nicht hin. Schönes HTML ist das auch nicht, aber ich denke du lernst ja noch ;)
EDIT2: Defaults gehören eigentlich ans Ende des Switches. Ich weiß nicht, ob das Probleme gibt, wenn es deine erste Anweisung ist, aber so ist es eigentlich der Programmierstandard.
 
Zuletzt bearbeitet:
faltermayer schrieb:
Jein.

Wenn du nen $_GET-Parameter erwartest, kannst du auch gleich nach $_GET-Fragen und musst nicht $_REQUEST verwenden. Dann frag vor deinem Switch ab, ob der Parameter überhaupt gesetzt und gefüllt ist (isset, empty) so vermeidest du Fehlermeldungen bzw. Warnungen. Das Umschreiben auf ne Variable (bei dir $id) is nicht unbedingt nötig, aber wenns dir beim Lesen hilft, ist's okay.

Also könntest du mir ein Beispiel zeigen? steig da gerade ehrlich gesagt nicht ganz durch :) Sorry :O



und das mit dem Table sollte nur gerade zum testen sein :) :) table würde ich nie richtig benutzen :D

Danke euch schonmal :))
 
PHP:
if (isset($_GET['id']) && !empty($_GET['id'])) {

switch($_GET['id']) { 
case 'News': include('news.php');
break;
case 'Members': include('members.php');
break;
default: include('main.php');
break;
}

}
else { 
include('main.php');

}

Sowas könnte funktionieren ...

EDIT: Klammer fehlte ...
 
Zuletzt bearbeitet:
Also das mit den ids vergeben klappt nun. Wisst ihr vielleicht wie ich dann dementsprechend den Content verändere? Also wenn ich dann auf den Link: News drücke, dann erscheint ja in der URL in dem Beispiel: index?id=News

Wo muss ich jetzt sagen das danach der Content geändert wird?

Lieben Gruß Flo
 
Zurück
Oben