# Inline Frames



## Swordsman (29. Juli 2003)

Hi
Ich habe folgendes Problem.
Zur seit habe ich meine Seite in mehrere Frames aufgeteilt. Doch nun kann ich , da ich weitere Inhalte der Navigation zufügen möchte, dies nicht tun, da ich ansonsten mehrere Scrollbalken bekomme. Was nicht sehr toll aussieht. Wäre die Lösung Inline Frames zu verwenden der richtige Weg ?

So dass ich praktisch nur einen Scrollbalken am rechten Rand bekomme ?
Und gibt es eine Möglichkeit, diese variable zu gestalten , so dass sich der Frame immer automatisch hinzugefügtem Inhalt anpassen würde ?
(PHP behersche ich kein Stück)
:sad:


----------



## Andreas Gaisbauer (29. Juli 2003)

Hello again 

also du hast deine seite ungefähr so:

```
+-----------+------------------+---------+
|           |                  |         |
|           |                  |         |
|           |                  |         |
|           |                  |         |
|           |                  |         |
|Navigation |     Inhalt       |  Bla    |
|           |                  |         |
|           |                  |         |
|           |                  |         |
|           |                  |         |
|           |                  |         |
|           |                  |         |
+-----------+------------------+---------+
```
Wenn du jetzt die Navigation erweitern willst wirst du Scrollbalken bekommen... Dann wärs ungefähr so:

```
+----------++------------------+---------+
|          ||                  |         |
|          ||                  |         |
|          ||                  |         |
|          ||                  |         |
|          ||                  |         |
|          ||                  |         |
|          ||                  |         |
|          ||                  |         |
|          ||                  |         |
|          ||                  |         |
|          ||                  |         |
|          ||                  |         |
+==========++------------------+---------+
```
sehe ich das Richtig? Wenn ja, werden dir IFrames nicht viel helfen, da die Balken sich dann halt nur in den IFrame verlagern... Oder hab ich dich jetzt falsch verstanden?

bye


----------



## Swordsman (30. Juli 2003)

Ich denke Crono. Wie kann ich als Anfänger einem Meister wie dir wiedersprechen. 
Das war nur eine Frage. Falls du eine Alternatieve für mich hättest , wäre ich dir sehr dankbar. (Buch PHP habe ich auch bestellt).Fall es wirklich nur damit gehen sollte.(include ?)
Hatte ich mal aufgeschnappt.

PS. Ich fahre in den Urlaub Yuhouu 
Es geht nach Gran Canaria :-( 
Bin also eine Woche weg. Hoffe, der Tread wird nicht gleich dichtgemacht.Denn auf deine Lösung (du hast immer eine und ich kenne keinen, der das besser kann als du) bin ich schon sehr gespannt.
Mfg Swordsman


----------



## Theeagle (2. August 2003)

Ich versteh dein Problem eh nicht!
wenn jetzt ein Besucher auf deine Site kommt der eine seht geringe Auflösung eingestellt hat oder der seinen Browser nicht auf Vollbild hat bekommt er doch so oder so Scrollbars...und die brauch er ja auch weil er ja sonst die unteren navigations-links nicht erreichen würde!


----------



## MC Breit (2. August 2003)

nein , er will das layout so: (ghlaub ich)


```
rechter browserrand
                                               |
                                               V
_______________________________________________ <-(oberer browserrand)
|             |                                ||
|  F          |  Frame 2                       ||
|  R          |                                ||
|  A          |                                ||
|  M          |                                ||
|  E          |                                ||
|  1          |                                ||
|             |                                ||
|             |                                ||
|             |                                ||
|             |                                ||
|             |                                ||
|_____________|                                ||
------------------------------------------------- <- (unterrer brow. rand)
              |                                |
              |      immernoch                 |
              |             frame 2            |
              |                                |
       nix    |                                |
              |                                |
              |                                |
              |                                |
              |________________________________|<-(ende frame 2)
              ^                                ^
              |                                |
          ( frame 2                       (frame 2
           rand links)                      rand rechts)
```

wobei der frame 1 immer oben bleibt...(also, in sichtweite...

nun iat der auch noch länger und er will das dieser "mittscroolt" aber trotzdem unabhängig ist...

ALSO das IST mit iframes realisierbar !

schau da ! meinst du so ?
(du musst erst extrahieren... sonst funzt es zwar , aber nicht richtig


----------



## Theeagle (3. August 2003)

also wenn er das wirklich so meint muss er ja nur
scrolling='no'
in iFrame schreiben....
aber ob das die Lösung für sein Prob ist wird er uns ja erst nach seinem Urlaub verraten!


----------



## MC Breit (3. August 2003)

da muss ich dir trozdem wiedersprechen , denn die frames sinbd ja länger als der browser es anzeigen kann..
wenn er scrolling="no" macht wie soll mann dan den den rest lesen ?


----------



## Theeagle (3. August 2003)

indem er ganz rechts runterscrollt! mit der scrollbar von der page selbst! nicht mit denen der frames...(die ja abgeschaltet sind)


----------



## Theeagle (3. August 2003)

ich fahr diese nacht auch in urlaub...wenn ich wieder kommen werde wir vielleicht mehr wissen...
bye!


----------



## MC Breit (5. August 2003)

aber die freames sind ja unabhängig von einander...

womiut wenn er reechts scrollt er ja auch nur den rechten frame scrollt und nicht alle !

aber schau dir mal 
http://www.sharksoft.net.tc an...

villeicht ist das die lösung....

also ich denke es ist halt sehr schwer etwas zu formulieren von dem man nichzt weiß wie die existierende matrix aussehen könnte und sich verhällt....


----------



## Swordsman (7. August 2003)

Hi  erstmal schönen Dank für die möglichen Lösungen.
Ich versuche es mal zu erklären. Denn ich weiss garnicht, ob das überhaupt machbar ist.
Ich möchte,dass die Links in dem selben Fenster, in der Mitte geladen werden und nicht rechts wie im Beisp. auf der Seite vom letzten Post.Da da ja nur 2 Seitenaufteilungen gegeben sind.
Ich aber habe drei.
Auf der linken Seite die Navigation
In der Mitte den Hauptframe
Und rechts Parner usw.
(Siehe Kronos Skizze) 

Im Prinzip möchte ich, dass sich trotz Frames alles als eine Einheit inklusive Kontainer(Navigation), mit es wurde schon erwänt nur einem Standart Browser-Scrollbalken rechts runterscrollen lässt.
Ich hoffe man versteht was ich meine. 
MfG
Swordsman


----------



## Daxi (8. August 2003)

Hmmm.
Deine Erklärung kappier ich nicht ganz.
Aber, wenn dein Frameset so aussieht:

```
+------------+-----------------------------+----------+
|            |                             |          |
|            |                             |          |
|            |                             |          |
|            |                             |          |
|            |                             |          |
| Frame:     |          Frame:             | Frame:   |
| links      |          haupt              | rechts   |
|            |                             |          |
|            |                             |          |
|            |                             |          |
|            |                             |          |
|            |                             |          |
+------------+-----------------------------+----------+
```
Ich hab da mal den Frames die Namen links, haupt und rechts gegeben.
Du hast jetzt einen Link im Frame links und möchtest, dass die Seite im Frame haupt angezeigt wird? Richtig verstanden?
Dann musst du einen Link mit einem target (Zielframe) definieren.
Dann wäre das so:
<a href="[Dateiname]" target="haupt">[Text]</a>
Oder du kannst das generell für alle Links in der Seite setzen.
Dazu verwendest du dann <base target="haupt"> im Head.

Ich hoffe, dass ich dein Problem verstanden habe.
Wenn nicht, bitte nochmal einen Erklärungsversuch starten.
Ggf. Wäre ein Screeshot oder ein Teil vom Quelltext nicht schlecht.

Ansonsten gibts noch von SELFHTML Hilfe:
- Frames: http://selfhtml.teamone.de/html/frames/definieren.htm
- Links mit Target: http://selfhtml.teamone.de/html/verweise/definieren.htm#zielfenster

Ich hoffe, dass dir das wenigstens weiterhelfen kann.


----------



## Swordsman (8. August 2003)

Die gesammte Aufteilung ist korrekt und das mit den Links Funktioniert ja auch .
Jedoch Frame Links bekommt weitere Navigationslinks. So dass der Linke Frame aufmal auch noch einen Scrollbalken bekommt. 
Ich möchte das die Kompletten Frames alle drei sich mir nur einem Scrollbalken rechts (standart) als eine Einheit runterscrollen lassen.
Ist das machbar ?


----------



## Andreas Gaisbauer (8. August 2003)

Nein, mit Frames ist das nicht möglich.


----------



## Daxi (8. August 2003)

Wenn du die Möglichkeit von PHP hasst würde ich das so machen:

Beispiel (Datei):

```
<?php
$bdir = "";
$titel = "Meine Homepage - Herzlich willkommen!";
include_once($bdir."head.php");
include_once($bdir."menu_xy.php");
include_once($bdir."middle.php");
?>
Seiteninhalt
<?php
include_once($bdir."bottom.php");
?>
```

Beispiel (head.php):

```
<html>
<head>
<title><?=$titel?></title>
<link rel="Stylesheet" href="<?=$bdir?>style.css">
</head>
<body>
<table width=100%>
<tr>
<td width=150 bgcolor=#000080 valign=top>
```

Beispiel (menu_xy.php)

```
&gt; <a href="index.php">Startseite</a>
&gt; <a href="links.php">Links</a>
&gt; <a href="downloads.php">Downloads</a>
```

Beispiel (middle.php)

```
</td>
<td width=* valign=top>
```

Beispiel (bottom.php)

```
</td>
<td width=150 bgcolor=#000080 valign=top>Inhalt auf der rechten Seite</td>
</tr>
<tr>
<td width=* colspan=3 bgcolor=#000080 align=center>Copyright / Autorhinweise etc.</td>
</tr>
</table>
</body>
</html>
```

Ich hoffe, dass du mit dem Beispiel zurecht kommst.

Variablen in der datei.php:
$bdir  <= Relative Angabe zum Basisverzeichnis
$titel <= Titel, der in der Titelleiste angezeigt werden soll


----------



## Swordsman (8. August 2003)

Sauber PHP habe ich gerade nen Buch bestellt.
Im Moment aber noch keine Ahnung davon. Trotzdem werde ich mir das absaven und baldig vers. umzusetzen. Das ist mein letzter Post, da ich nicht vorhabe, hier meinen eigenen Spam Temple einzurichten. 

Aller letzte Frage #
Ich habe gelesen, dass man mit CSS eine gleiche Aufteilung sogar ohne <table> hinbekommen kann.Da sich die Grafiken ja wiederholen, müsste die Ladezeit ja auch nicht viel länger dauern, wenn ich es ohne Frames mache. Die Seiten der Links dann halt immer wieder vollständig neu geladen werden. Liege ich da richtig ?


----------



## He@dkiller (23. August 2003)

Das ist genau das Script was ich auch brauche  

Allerdings habe ich dazu noch ne Frage: Wie kriege ich es nun hin, das ich in der Mitte (middle.php) andere php-Dateien aufrufen kann?

Ich habe Datei wie folgt geändert:

Original:

```
<?php
$bdir = "";
$titel = "Meine Homepage - Herzlich willkommen!";
include_once($bdir."head.php");
include_once($bdir."menu_xy.php");
include_once($bdir."middle.php");
?>
Seiteninhalt
<?php
include_once($bdir."bottom.php");
?>
```

Meine Änderung:

```
<?php
$bdir = "";
$titel = "Meine Homepage - Herzlich willkommen!";
include_once($bdir."head.php");
include_once($bdir."menu.php");
include_once($bdir."middle.php");
?>

<?php
include("index.php"); // Seiteninhalt Mitte
?>

<?php
include_once($bdir."bottom.php");
?>
```

D.h., der Inhalt in der Mitte, wo jetzt die index.php includiert wird, ändert sich, je nachdem welcher Link im Menü angeklickt wird...

Ich hab schon einiges versucht, aber irgendwie bekomme ich es nicht hin... 

Wäre echt nett von Euch, wenn Ihr mir dabei helfen könntet  

Gr33tz, He@dkiller


----------



## Theeagle (23. August 2003)

das machst am besten per URL-variablen
also dann in der URL gibste ein
http://www.blabla.bla/index.php?site=links

und dann in der index.php machst das so:

```
<?php
$bdir = "";
$titel = "Meine Homepage - Herzlich willkommen!";
include_once($bdir."head.php");
include_once($bdir."menu_xy.php");
if ($_GET["site"]=="links")
  { include_once($bdir."links.php"); }
else 
  { include_once($bdir."middle.php"); }
?>
Seiteninhalt
<?php
include_once($bdir."bottom.php");
?>
```


----------



## He@dkiller (23. August 2003)

Danke für die schnelle Antwort 

Aber irgendwie funktioniert das nicht 

Ich habe folgendes gemacht:

*Datei index.php (hieß vorher datei.php, wie aus dem Beispiel!)* 

```
<?php
$bdir = "";
$titel = "Meine Homepage - Herzlich willkommen!";
include($bdir."head.php");
include($bdir."menu.php");

if ($_GET["site"]=="links")
  { include_once($bdir."list.php"); } // diese datei ändert sich je nach Menüpunkt
else
  { include_once($bdir."middle.php"); }
?>


<?php include("news.php");?> // diese Datei ist die "default"-Seite

<?php
include($bdir."bottom.php");
?>
```

Das eigentliche Problem ist, das ich ja die *menu.php* includiere, damit die *index.php* nicht zu groß wird, bzw. ich das Menü "einzeln" habe. Wenn ich nun versuche über http://www.blabla.bla/index.php?site=links die *list.php* aufzurufen, klappt das auch.

Allerdings mach ich ja diesen Aufruf in der *menu.php*, deswegen wird die jeweilige php-Datei, in diesem Fall die *list.php* in der *menu.php* includiert und NICHT da, wo die *index.php*, bzw. *news.php* aufgerufen wird 

Muß ich jetzt den Aufruf http://www.blabla.bla/index.php?site=links in der *index.php* machen, oder hab ich was falsch verstanden?

Danke für die Hilfe 

[edit]
Was ich noch vergessen habe: In der *list.php*, bzw. auch in den anderen Dateien, arbeite ich mit Tabellen. Wenn ich nun eine dieser Dateien aufrufe, wird das ganze Desgin verworfen, da ja die einzelnen Tags auch wieder sofort geschlossen werden.
[/edit]


----------



## THE REAL TOOLKIT (23. August 2003)

Du darfst in der menu.php nichts includieren,setz die links einfach auf die index.php.
Die Tags darfst du dann erst später schließen.


----------



## He@dkiller (24. August 2003)

Ich includiere nichts in der menu.php, sonder die menu.php wird in der index.php mit dem Befehl *include_once($bdir."menu.php");* includiert  

Und in der menu.php rufe ich die versch. Links mit dem folgenden Befehl auf:

*<div align=center><a href="index.php?site=links&cid=2">SVCD</div></a>*

Aber ich bastel noch ein wenig, vielleicht komme ich ja selber drauf was ich falsch mache  Ich denke mal, das mein Ansatz schon ganz falsch ist... Aber falls einer ne Idee hat, dann kann er (sie) ja hier antworten  

Gr33tz, He@dkiller


----------



## Theeagle (24. August 2003)

Also ich würde das Grundsystem schon mal ganz anders aufbauen...
allerdings ist es ziemlich aufwendig das jetzt hier alles in denem Post zu erklären.
Aber vielleicht kannst du da was damit anfangen wenn ich dir sage das ich es per iFrames und Slices machen würde.


----------



## He@dkiller (24. August 2003)

@Theeagle:

Danke für deine schnelle Hilfe 

Aber ich habe es mittlerweile hervorragend gelöst  Hab mich hier im Forum stundenlang umgeschaut, bis ich die passende Lösung gefunden habe  

Aber das funktioniert jetzt sowas von gut, und ALLES ohne Slices oder iframes  Hatte, wie vermutet, schon den Ansatz falsch gehabt... Als PHP-Neuling muß man halt suchen, verändern und sehen was passiert 

Also nochmals Danke an alle die mir versucht haben zu helfen, das Forum hier ist echt TOP  

Gr33tz, He@dkiller


----------



## Kettu (16. November 2003)

> _Original geschrieben von He@dkiller _
> *Aber ich habe es mittlerweile hervorragend gelöst  Hab mich hier im Forum stundenlang umgeschaut, bis ich die passende Lösung gefunden habe
> 
> Aber das funktioniert jetzt sowas von gut, und ALLES ohne Slices oder iframes  Hatte, wie vermutet, schon den Ansatz falsch gehabt... Als PHP-Neuling muß man halt suchen, verändern und sehen was passiert *


Das ist ja richtig schön für dich. Es wäre natürlich für uns andere PHP-Neulinge nett, wenn du uns auch noch erklären könntest, WIE du das Problem gelöst hast.  Ich hab nämlich so ziemlich das gleiche und hab trotz vieler Vorschläge und Versuche noch keine Lösung!


----------

