page id erzeugen
sven
- php
hallo forumer,
ich hätte da mal eine frage:
seit tagen suche ich mich blöd, habe ein php buch gekauft (nebenbei gesagt für den preis völlig unbefriedigende infos zum lernen) google abgeklappert, und alles mögliche.
auf vielen webseiten sieht man etwas in dieser art hier
index.php?pageid=kontakt
als beispiel.
ich wüsste jetzt gerne, (falls einer weis wie) wie man das macht?
in dem buch das ich gekauft habe steht es nicht drin.
bei google habe ich nichts gefunden das erklärt wie das geht, auf den einschlägigen php seiten habe ich ebenfalls nichts gefunden.
macht man das über eine datenbank?
(my sql datenbank vielleicht???)
wäre schön, wenn mir einer von euch erklären könnte vielleicht auch anhand eines beispieles, wie man das macht.
danke euch schonmal für eure bemühungen.
mfg
sven
[der nicht dumm sterben will wenn es soweit ist]
Hallo Sven,
ich muss sagen, dass ich nicht genau verstanden habe, um was sich deine Frage dreht, aber ich nehme mal an, dass du genauer wissen willst, wie "index.php" weiss, welche Seite angezeigt werden soll. Erstmal: Du brauchst nicht zwingend eine Datenbank dafuer, die ist nur bei grossen Projekten eine wirkliche Hilfe.
Die Methode, dass alle Links erst einmal auf eine "index.php" zugreifen, wird gerne verwendet, um Variablen oder Einstellungen, die fuer die gesamte Webpraesenz gelten (z.B. Sessions), in einer zentralen Datei abzuarbeiten. Ueber die Variable $pageid, die uebergeben wird, kann "index.php" dann entscheiden, aus welcher Datei der Inhalt stammen soll.
Ein Beispiel (wehe, es kritisiert jemand meinen Programmierstil ;-)!
--Datei index.php--------------------
<html>
<head>
<title>gr@phics.de</title>
[...und bla und blubb und noch mehr Einstellungen]
</head>
<body>
<?php
[...und bla und blubb und noch mehr Einstellungen]
switch($pageid)
{
case "kontakt";
include "kontakt.php";
break;
case "forum";
include "forum.php";
break;
[...]
}
?>
</body>
</html>
-------------------------------
--Datei kontakt.php--------------------
<p>
Bitte setzen Sie sich mit uns in Verbindung:
<a href="mailto:gr@phics.de">gr@phics.de</a>
</p>
-------------------------------
Hoffe, dir geholfen zu haben.
gr@phics.de
Hi
Mich interresiert das auch schon seit einer weile.
Meine Website besiert auf einer zentralen datei wo alle links ( URLs und Grafiken festegelgt sind ( arrays ). Jede seite greift darauf zu und saugt sich sozusagen die ganzen addressen.
Meines erachtens hat das den Vorteil das man die dateien in irgend einen Ordner kopieren kann und trodzdem der Link zu der .css datei funzt ( und bilder usw )
Welches ist die bessere alternative?
Mfg Analpha
<der PHP irgendwie net checkt!>
Hi
Mich interresiert das auch schon seit einer weile.
Meine Website besiert auf einer zentralen datei wo alle links ( URLs und Grafiken festegelgt sind ( arrays ). Jede seite greift darauf zu und saugt sich sozusagen die ganzen addressen.
Meines erachtens hat das den Vorteil das man die dateien in irgend einen Ordner kopieren kann und trodzdem der Link zu der .css datei funzt ( und bilder usw )
Dann machst Du aber was falsch bei der Linksetzung.
Du kannst diesen einmal relativ definieren, dann sieht das so aus: ../../index.php. Dann liegt index.php in einem "Überverzeichnis". Nun tritt aber ein Problem auf, wenn Du die datei in einer anderen Ordener kopierst. Dann passt das evtl. nicht mehr.
Welches ist die bessere alternative?
Besser ist es dann den Link absolut zu definieren. dann sieht das so aus: /toll/klasse/index.php Dann ist es egal, in welchem verzeichnis die seite mit dem link ist. Der link zeigt dann immer auf www.xy.de/toll/klasse/index.php
Mfg Analpha
MfG Christof
<der PHP irgendwie net checkt!>
Hallo Sven,
index.php?pageid=kontakt
was du da siehst ist der Aufruf der Seite index.php mit der Übergabe von Parametern mittels der HTTP-Methode "GET"
Du kannst im Skript dann hierauf zugreifen
Beispiel:
<?php
$pageid=$HTTP_GET_VARS["pageid"];
...
?>
wäre schön, wenn mir einer von euch erklären könnte vielleicht auch anhand eines beispieles, wie man das macht.
s.o.
$HTTP_GET_VARS ist ein sog. Assoziatives Array (auch HAsh gen.) bedeutet der INDEX/Schlüssel kann ein beliebiger (erlaubter) skalarer Wert sein (nicht nur eine gannzahl, wie bei "normalen" Arrays) --> in diesem Ass. Array stehen dann alle per GET übermittelten Werte an der entsprechen Stelle (Schlüssel=Name des übergebenen Wertes...)
Hilft das etwas?
Gruss Sven S.
danke euch schonmal für eure bemühungen.
mfg
sven
[der nicht dumm sterben will wenn es soweit ist]