Include Problem

dragonlord

Erfahrenes Mitglied
Hallo,

also ich möchte ein GB realisieren.
Ich habe eine Datei : gaestebuch.php diese seite ist grafisch den anderen
Seiten angepasst.
Auf dieser Seite befindet sich eine Tabelle dort wird die Datei gast_index.php
included. Bis dahin kein Problem.
Aber. Wenn ich jetzt den Link "Eintragen" klicke wird die Datei
gast_write.php Browserfüllent geöffnet. Ich möchte aber das diese auch wieder
inerhalb von geastebuch.php includiert. So in der art wie ein Iframe.
geht das?
 
Du koenntest das z.B. so machen, dass Dein Link wie folgt aussieht:
gaestebuch.php?subsite=gast_write.php

In der gaestebuch.php kommt dann folgender Code:
PHP:
if ($subsite)
 {
  include($subsite);
 }

Wo Du das dann includest ist dann Deine Sache, soll ja irgendwie Design-maessig was bringen.

Ich wuerde dafuer aber kein extra PHP-File zu schreiben, sondern einfach nur gaestebuch.php?addentry=1 uebergeben, dann
PHP:
if ($addentry)
 {
  Kram zum Eintragen
 }
else
 {
  Gaestebuch anzeigen
 }

Bei mir sind die Seiten so aufgebaut (nicht GB, aber in der Theorie aehnlich) dass sie sowohl den Inhalt einfach nur anzeigen koennen, oder aber zum einfuegen, editieren und loeschen genutzt werden koennen.
Kann bei Bedarf gern mal eins der Scripts anhaengen.
 
Zuletzt bearbeitet:
Hi,


also wirklich tut das nicht:

Obwohl ich eine If Abfrage geschrieben habe wird die Seite der ersten If Abfrage immer includiert selbst wenn gar keine Werte übergeben wurden. Ist das normal?
Abgesehen davon werden sie dann untereinander inkludiert. Das ist ja auch nicht der Sinn der Sache.

Oder mache ich da etwas falsch?
Wäre gute wenn du mir das Beispielscript hier anhängen könntest.

Gruss
dragonlord
 
Hier mal meine index.php
Ein div links, fuer's Menue. Und ein div rechts fuer den Content.
Ist auch eine Abfrage drin, dass als subsite nicht wieder die index.php uebergeben werden kann, das bringt sonst lustige Effekte da die sich dann endlos ineinander verschachtelt. :)

Viel Erfolg.
 
Wenn du den Code in der Form online gestellt hast, solltest du ihn schleunigst ändern, du gibst damit einem Besucher die Möglichkeit, beliebigen Code auf deinem Server auszuführen, er muß nur an Subsite die passenden Werte übergeben.
 
Der Code ist zwar online, jedoch nicht wirklich oeffentlich. Da meine Website noch im Aufbau ist liegt alles was im Moment so gescriptet wurde in 'nem Testverzeichnis.
Auf jeden Fall mal vielen Dank fuer den Hinweis. Hast Du auch 'nen konkreten Tip wie ich die Sicherheit des Scripts erhoehen kann?
 
Ganz einfach: Du übergibst nicht direkt die einzubindende Datei, sondern nur einen Namen, z.B. subsite=news. Dann überprüfst du darauf und bindest bei Erfolg die news.php ein. Am einfachsten geht das mit einer switch-case-Struktur.
 
Das hatte ich vorher schon, da ich aber auch noch Parameter an die Unterseite uebergeben will hab ich das erstmal wieder ueber Bord geworfen.
Z.B. hab ich in der User-Verwaltung (users.php) folgendes stehen zum Editieren des Users (zum Loeschen sieht's fast gleich aus):
<a href="<? printf('index.php?subsite=users.php&edit=%s',$user[0]); ?>">Edit</a>
Demensprechend ist es natuerlich einfacher direkt $subsite zu includen.
 
Zurück