index.php?id=1

Genauso wie die es schreibst. Man schreibt index.ph?id=1
Das ist leider die einzige Antwort die auf deine kurz gehaltene Frage past.

Ansonsten führ doch mal aus, wass index.php?id nachher machen soll, im vergleich zu index_id1.php
 
Du lässt eine andere PHP-Datei in deiner index.php includen.
Das heißt du erstellst eine index.php und 1.php 2.php usw.

Dann lässt du dir die Dateien mit folgendem Code in deiner Index.php einbinden.

PHP:
<?php
      $id = $_GET['id'];
      if(!isset($id)) $id="start";
      $invalide = array('/','/\/',':','.');
      $id = str_replace($invalide,' ',$id);
      if(!file_exists($id.".php")) $id = "start";
      include($id.".php");
     ?>

Die Seiten sind dann unter
Code:
http://domain.de/index.php?id=1
zu erreichen.
 
Nein, ich meine, dass man in der php datei dann einen eintrag macht, damit der und der Text dann angezeigt wir, wenn man z.B. index.php?id=1 aufruft.
Aber wie geht das dann mit index.php?id=1&action=2 ?
 
Wie würde dann der php code dafür lauten das man index.php?id=1&action=2 aufrufen kann und dann ein Text dort steht ?
 
Zuletzt bearbeitet:
Hey,

ich würde die GET-Variablen in einem Array packen und überprüfen, ob die Elemente,
die über GET kommen auch in dem Array stehen.


PHP:
<?php
      include($id.".php");
     ?>

zu erreichen.

Mit deinem Code könnte man durch spezielle Parameter Schaden anrichten.
Also
PHP:
$var = array("home" => "home.php"; "var2" => "var2.php") 
if($var[$_GET['param']]){include $var[$_GET['param']];}

kuli2011:
Ein weiterer Ansatz ( aber erbesserungswürdig)wäre:

PHP:
$action = $_GET['action']
switch ($action){
case "home": $content = "Home";break;
case "bla": $content = "bla";break:
default: $content = "";break
}

mfg
bo
 
Zurück