Thorsten Reichelt: Layout mit Tabellen und PHP aber ohne mySQL => viele Fragen

Hallo !

Ich bin gerade dabei meine Homepage von normalem
HTML und Frames auf PHP und Tabellen umzustellen.
Da ich keinen Datenbankzugriff habe muss das
alles mit reinen HTML bzw. PHP Befehlen funktionieren.
Ich muss direkt vorweg sagen, ich habe so gut wie
keine Ahnung von PHP.

Aber jetzt zu meinen Fragen.
Ist leider etwas umfangreich geworden.

Meine Seite sieht folgendermaßen aus:

N |Seitenüberschrift|
A |_________________|
V |                 |
I | Inhalt          |
G |                 |
A |                 |
T |                 |
I |                 |
O |                 |
N |                 |
__|_________________|

Das Design soll für alle Seiten fest sein und
lediglich die Überschrift und der Inhalt sollen
sich ändern. Ich habe das jetzt folgendermaßen
realisiert (Inhalt der index.php):

#######################################################
<BODY LEFTMARGIN="0" MARGINWIDTH="0" TOPMARGIN="0" MARGINHEIGHT="0" bgcolor="#000000" text="#FFFFCC">
<TABLE CELLPADDING="0" CELLSPACING="0" BORDER="0" width="100%" height="100%">
  <TR>
    <TD class="bgmenu" ROWSPAN="2" width="190" align="left" valign="top" height="100%">
 <img src="images/blank.gif" width="190" height="110" alt=" "><br>

<!-- ------------------------------------- -->
 <!-- Navigationsmenue auf der linken Seite -->
 <!-- ------------------------------------- -->
 <?
   include ('menu_de.php');
 ?>
    </TD>

<td class="bgoben" height="104" width="100%" valign="top">

<!-- -------------------------------- -->
 <!-- Ueberschrift der Seite eingefügt -->
 <!-- -------------------------------- -->
 <div align="center">
 <?
   if ($con){
  printf("<img src="images/head_".$con.".gif">");
  }
   else{
  printf(" ");
  }
 ?>
 </div>
    </td>
  </TR>
  <TR>
    <TD bgcolor="#000000" align="left" valign="top" height="99%" width="100%">

<!-- ------------------------- -->
 <!-- Ab hier steht der Inhalt  -->
 <!-- ------------------------- -->

<?
 if ($con){
  include ($con.'.php');
  }
 else{
  include ('intro.php');
  }
    ?>

<br>
    <? include('copyright.php'); ?>
    </TD>
  </TR>
</TABLE>
</BODY>
#######################################################

Das funktioniert auch bis jetzt super. Ich kann also mit

index.php?con=seite1
index.php?con=seite2 usw.

die einzelnen Seiten anzeigen lassen. Wird con nicht angegeben
erscheint die Startseite. Die Inhalte tragen die Dateinamen:

seite1.php, seite2.php usw.

* Kann ich das so machen oder gibt es damit irgendwelche Probleme
  die ich bisher noch nicht erkannt habe?

Ich sehe bisher nur ein Problem. Und zwar besitze ich
ein externes Gästebuch bei Lycos.

* Kann ich das auch irgendwie in der Tabelle anzeigen lassen?
  Geht das auch per PHP oder muss ich das dann über ein
  <IFRAME> machen?

Da das Gästebuch demnächst durch ein eigenes auf meinem Server
ersetzt werden soll (gedacht war das Gästebuch von Achim Winkler,
 http://www.lkcc.org/achim welches ohne mySQL auskommt) kommt dann
aber bestimmt ein neues Problem auf mich zu. Das Gästebuch besteht
aus einigen PHP Dateien. Kann man die ohne Probleme in meine
Tabelle integrieren?

Ich sehe da nämlich Probleme aufkommen da das Gästebuch
ja mit guestbook.php?act=new&lang=ger usw. aufgerufen wird,
ich aber schon meine eigenen Seiten mit index.php?con=...
aufrufe.

* Kann man das irgendwie verknüpfen?
  Also z.B. index.php?con=gaestebuch&guestbook.php?act=new?lang=ger

Wir ihr sehen könnt, ich habe nicht so viel Ahnung von PHP. :-)

Ich würde mich trotzdem freuen wenn ihr mir helfen könntet!!!!

Vielen Dank.

Gruß
  Thorsten

  1. Hallo !

    Hi,

    Das anzeigen des lycos Gästebuchs ohne i-frame ist möglich aber etwas umständlich, wie ich das sehe.
    Eigentlich könntest Du dies einfach mit
    readfile("GB-URL"); tun, aber dann zeigen die links wie
    'nächste Seite' noch auf das Gästebuch selbst, d.h. geht man auf seite 2, verliert man das layout der Seite. Also müsste man es anders angehen. Erst die datei in ein string lesen, dann die links verbessern.
    neenbei: Ich habe keine ahnung, ob das so klappt.
    // liest den Inhalt einer Datei in einen String
    $filename = "GB-URL";
    $fd = fopen ($filename, "r");
    $contents = fread ($fd, filesize ($filename));
    fclose ($fd);

    In $centents  müssen wir nun alle Links verändern,also:
    Genauer, das 'GB-URL?' muss Durch Deine 'Seiten-URL?alldeineangaben&' ersetzt werden
    $content=eregi_replace ("GB_URL?", "Seiten-URL?alldeineangaben&", $contents);
     Nun musst Du natürlich diese zuaäzulichen variablen , wie Z.b. page=3 abfangen und dem $filename hinzufügen, damit auch die richtige GB-seite geladen wird.

    Soviel dazu. Im moment fürde immernoch das <html>....ausgegeben, ich weiß nicht wie die browser darauf regaieren. also sollte man das auch über ein eregi_replace rausnehmen.

    Sobald Du Dein eigenes Gäsebuch hast, kannst Du bestimmt alles so formatieren, daß Du Problemlos mit readfile() arbeiten kannst, da Du den <html>-Kram únd die Links einfach im gästebuch-code ändern kannst

    ok, ich hoffe das half und Du bist nicht zu verwirrt :-)

    jonas

    1. Hallo Jonas!

      ok, ich hoffe das half und Du bist nicht zu verwirrt :-)

      Kannst Du das große Fragezeichen sehen?
      Danke für Deine Antwort, aber irgendwie erscheint
      mir das viel zu kompliziert. Und da ich ja keine
      PHP Leuchte bin...

      Jetzt scheitert bestimmt wieder alles an diesem
      blöden Gästebuch. :-<

      Gruß
       Thorsten

      1. Hallo Jonas!

        sobald Du Dein Gästebuch eingerichtet hast, wozu es wahrscheinlich eine anleitung gibt, wird es einfach sein....nur mit dem externen wäre es ohne iframe schwierig....

        also, nutzte einfach bis dahin ein iframe....viel glück,

        jonas

        1. Ich werde erst einmal auf die <Iframes> zurückgreifen.
          Für die Netscape4 Benutzer biete ich dann halt eine Option an um das Gästebuch in einem extra Fenster öffnen zu lassen.

          Gruß
            Thorsten