<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
	<channel>
		<title><![CDATA[missing Forum — PHP statt iframe]]></title>
		<link>https://forum.missingno.de/topic/40/</link>
		<atom:link href="https://forum.missingno.de/feed/rss/topic/40/" rel="self" type="application/rss+xml" />
		<description><![CDATA[The most recent posts in PHP statt iframe.]]></description>
		<lastBuildDate>Thu, 09 Mar 2006 12:05:41 +0000</lastBuildDate>
		<generator>PunBB</generator>
		<item>
			<title><![CDATA[PHP statt iframe]]></title>
			<link>https://forum.missingno.de/post/64/#p64</link>
			<description><![CDATA[<p>Weil ich schon des öfteren gefragt worden bin, wie man eleganterweise auf iframes verzichten kann, hier eine kleine Erklärung.</p><p>Im folgenden gehe ich davon aus, dass man eine Seite haben möchte, die den Inhalt wie bei einem iframe in einem Container-Element hat und natürlich verschiedene Links um auf die &quot;Unterseiten&quot; zu kommen. Die &quot;Unterseiten&quot; benenne ich einfach mal mit seite1.htm, seite2.htm usw.</p><p>Die <strong>index.php</strong> sollte in etwa so aussehen:<br /></p><div class="codebox"><pre><code>&lt;!DOCTYPE HTML PUBLIC &quot;-//W3C//DTD HTML 4.01//EN&quot; &quot;http://www.w3.org/TR/html4/strict.dtd&quot;&gt;
&lt;html&gt;
&lt;head&gt;
&lt;title&gt;Titel der Seite&lt;/title&gt;
&lt;style type=&quot;text/css&quot;&gt;
/* hier werden die StyleSheets für das Dokument definiert */
&lt;/style&gt;
&lt;/head&gt;
&lt;body&gt;
&lt;div class=&quot;linkliste&quot;&gt;
&lt;a href=&quot;index.php?id=1&quot;&gt;Seite 1&lt;/a&gt;
&lt;a href=&quot;index.php?id=2&quot;&gt;Seite 2&lt;/a&gt;
&lt;a href=&quot;index.php?id=3&quot;&gt;Seite 3&lt;/a&gt;
...
&lt;/div&gt;
&lt;div class=&quot;seiteninhalt&quot;&gt;
&lt;?php
switch ($HTTP_GET_VARS[&#039;id&#039;]) {
  case 1:
    include(&quot;seite1.htm&quot;);
    break;
  case 2:
    include(&quot;seite2.htm&quot;);
    break;
  case 3:
    include(&quot;seite3.htm&quot;);
    break;
// usw.
  default:
    include(&quot;seite1.htm&quot;);
}    
?&gt;
&lt;/div&gt;
&lt;/body&gt;
&lt;/html&gt;</code></pre></div><p>Wie man sehen kann wird bei den Links lediglich die gleiche Seite mit einer neuen <em>id</em> geladen. Diese <em>id</em> wird im PHP-Teil dazu verwendet die entsprechende Datei einzufügen.<br />Die HTML-Dateien (seite1.htm, seite2.htm) sind eigentlich keine vollständigen HTML-Dokumente. Sie enthalten lediglich das, was in dem Container stehen soll. Also zB<br /><strong>seite1.htm</strong>:<br /></p><div class="codebox"><pre><code>&lt;p&gt;&lt;b&gt;Willkommen auf meiner Seite!&lt;/b&gt;&lt;/p&gt;
&lt;p&gt;Hier gibt es bisher nicht viel zu sehen. ;)&lt;/p&gt;</code></pre></div><p>Mittels der Klassen &quot;linkliste&quot; und &quot;seiteninhalt&quot; lassen sich die beiden div-Container problemlos über CSS anpassen. Für &quot;seiteninhalt&quot; empfiehlt sich je nach Größe des Inhalts und des Containers auf jeden Fall &quot;overflow:auto;&quot;.</p><p>Ich hoffe, dass die Erklärung ausführlich genug ist und euch etwas nützt. <img src="https://forum.missingno.de/img/smilies/smile.png" width="15" height="15" alt="smile" /></p>]]></description>
			<author><![CDATA[null@example.com (missingno)]]></author>
			<pubDate>Thu, 09 Mar 2006 12:05:41 +0000</pubDate>
			<guid>https://forum.missingno.de/post/64/#p64</guid>
		</item>
	</channel>
</rss>
