• Jetzt anmelden. Es dauert nur 2 Minuten und ist kostenlos!

Hauptfenster mit Menüleiste automatisch verlängern

the_zoker_09

Mitglied
Hallo zusammen,
Ich habe eine Frage:
Ich habe auf meiner Homepage ( shin.crystalblood.de ) in der Mitte wo das Hauptfenster ist, einen IFrame,der von den links ausenherum gesteuert wird.
Nun wie ihr auf der Seite sehen könnt, ist die Menüleiste rechts.
Und je nach Inhalt möchte ich das der IFrame länger wird (ich will Scrollleisten vermeiden) UND auch die Menüleiste soll sich mit verlängern und zwar genauso wie das Hauptfenster.

Wie mache ich das am besten (und nicht so kompliziert ;) )

Vielen Dank
the_zoker_09
 
Hallo.

Warum machst du es dir nur so schwer? Verzichte einfach auf diesen iframe.

Entweder du erstellst für jeden Link eine eigene Seite oder du fügst die Seiteninhalte per php include ein.

Das sieht auf jeden Fall besser aus und ist auch leichter zu bearbeiten.

Gruss
Elroy
 
Aber bei mir kommt ja der Fehler:

Code:
[B]Warning[/B]:  include(../kalender/kalender2.php) [[URL="http://de.php.net/function.include"]function.include[/URL]]: failed to open stream: No such file or directory in [B]/users/crystalblood/www/filemanager/Shin/index.php[/B] on line [B]164[/B]
 
[B]Warning[/B]:  include() [[URL="http://de.php.net/function.include"]function.include[/URL]]: Failed opening '../kalender/kalender2.php' for inclusion (include_path='.') in [B]/users/crystalblood/www/filemanager/Shin/index.php[/B] on line [B]164[/B]
Obwohl es die Datei gibt.

Und ich habe in den Beschreibungen nicht herauslesen können, wie man einen Link dazu bringt, eine bestimmte Datei (z.B. test.php) zu "includen".
Wie geht das denn?

Vielen Dank
the_zoker_09
 
Zuletzt bearbeitet:
Die Datei existiert sicherlich, nur nicht unter dem von dir angegebenen Pfad. Wenn Du

PHP:
include("../kalender/kalender2.php");

in der Datei unter

Code:
/users/crystalblood/www/filemanager/Shin/index.php

angibst, muss die Datei unter

Code:
/users/crystalblood/www/filemanager/kalender/kalender2.php

liegen.

Das ist kein Problem von include sondern von Deinen Pfadangaben.

Deine Frage zum includen von variablen Dateien wird im zweiten Link ausführlich beschrieben. Etwas kürzeres findest Du vlt. im PHP-Bereich dieses Forums (die Frage wird öfter mal gestellt).
 
Ach so ich dachte, wenn der Code
PHP:
 include ("../kalender/kalender2.php")
Heisst, dass die Datei dann hier liegt:
Code:
/user/filemanager/Shin/Kalender/Kalender2.php

Wie muss den der include aussehen, wenn er die Datei aus dem oben genannten Pfad nehmen soll?

So?:
PHP:
include("../user/filemanager/Shin/Kalender/Kalender2
Stimmt das dann?

Vielen Dank
the_zoker_09


edit:

Also
PHP:
include ('../user/filemanager/Shin/kalender/kalender2.php')
und
PHP:
include ('../filemanager/Shin/kalender/kalender2.php')
funktionieren beide ebenfalls nicht.
Selber Fehler.


edit2:
Aber das mit dem Includen über die Menüleiste mit PHP geht jetzt :D


edit3:
Hab jetzt auch den richtigen Pfad für den Kalender gefunden, aber leider funktioniert das noch nicht so ganz :neutral:
Er setzt irgendwie das Zeug, über den Kalender, der mit PHP include() eingesetzt wurde. :?
 
Zuletzt bearbeitet:
Hallo.

Wenn du eine Datei includest dann includest du nur den Inhalt.
Also ohne Doctype und header sondern nur das was normalerweise im <body> </body> Bereich steht.

Gruss
Elroy
 
Ich hab die PHP Datei mal verändert.
Wenn ich hinter das include noch ein break setzte, übernimmt er das Design wie er es soll.
Auch der Kalender funktioniert, aber er bringt diesen Fehler:
Code:
[B]Fatal error[/B]:  Cannot break/continue 1 level in [B]/users/crystalblood/www/filemanager/Shin/index.php[/B] on line [B]166[/B]
Was is da noch falsch?
Danke
the_zoker_09

edit:
Das Design ist doch nicht normal: er hört auf den anderen include zu laden :?
Hab jetzt das break wieder rausgenommen.
Aber irgendwie haut er des nach ganz unten
Weiss einer warum?

Hallo.

Wenn du eine Datei includest dann includest du nur den Inhalt.
Also ohne Doctype und header sondern nur das was normalerweise im <body> </body> Bereich steht.

Gruss
Elroy
Hab das Doctype schon rausgenommen.
Kann man php auch sagen, dass es nur das <body> Zeug übernehmen soll, ohne dass ich es löschen muss?
 
Zuletzt bearbeitet:
Ja, aber besser wäre es, wenn Du schon in der includeten PHP-Datei nur das nötigste stehen lässt - also keinen doctype, keinen <head>, kein <body>.
 
Es sind noch diverse HTML-Fehler enthalten. Unter anderem:

HTML:
<p>    <style type="text/css"> body, a, td, th {  font-family: Verdana, Arial; font-size: 13px; }  a, a:visited {  color: #DD0000; } </style>
 
Also ich habe jetzt wirklich alles ausser die <body> Tags entfernt:
Hier mal der Code:
HTML:
<body>
<link rel=stylesheet type="text/css" href="http://shin.crystalblood.de/kalender.css">
<center>
<?php
// Terminkalender - Kalender

require_once("einstellungen.inc.php");

$monat = date("n");
$jahr = date("Y");

if ($_GET) {
 $_GET["monat"] = $_GET["monat"] < 10 ? (ereg_replace("^0", "", $_GET["monat"])) : $_GET["monat"];
 $jahr = (($_GET["monat"] > 12) ? ($_GET["jahr"] + 1) : (($_GET["monat"] < 1) ? (trim($_GET["jahr"]) - 1) : trim($_GET["jahr"])));
 $monat = trim((($_GET["monat"] < 1) ? 12 : (($_GET["monat"] > 12) ? 1 : $_GET["monat"])));
}

$monatsname = strftime("%B", mktime(0, 0, 0, $monat, 1, $jahr));
$monatminus = $monat - 1; $monatplus = $monat + 1;
$jahrminus = $jahr - 1; $jahrplus = $jahr + 1;

echo <<<EOT
<script type="text/javascript">
function gehe_zu(datum) {
 if (datum != null) {
  var d = datum.split(",");
  if (d[0] < 13 && d[1] > 1901 && d[1] < 2038) {
   window.location.href="?monat=" + d[0] + "&jahr=" + d[1] + "";
  }
 }
}
</script>
<table border="0" cellPadding="6" cellSpacing="1">
<caption style="white-space: Nowrap;">
<strong>$terminkalender</strong><br>
<a href="?monat=$monatminus&amp;jahr=$jahr" title="Einen Monat zur&uuml;ck" style="text-decoration: None;">&larr;</a> 
$monatsname 
<a href="?monat=$monatplus&amp;jahr=$jahr" title="Einen Monat vorw&auml;rts" style="text-decoration: None;">&rarr;</a> 
&nbsp; <a href="?jahr=$jahrminus&amp;monat=$monat" title="Ein Jahr zur&uuml;ck" style="text-decoration: None;">&larr;</a> 
$jahr 
<a href="?jahr=$jahrplus&amp;monat=$monat" title="Einen Jahr vorw&auml;rts" style="text-decoration: None;">&rarr;</a> 
</caption>
<tr style="background-color: $tabellenkopf_hintergrund;">
<th>Mo</th><th>Di</th><th>Mi</th><th>Do</th><th>Fr</th><th>Sa</th><th>So</th>
</tr>
<tr style="background-color: $zellenhintergrund_dunkel;">
EOT;

$zelle = array_fill(0, 7, "&thinsp;");
$zelle = array_splice($zelle ,0 , (date("w", mktime(0, 0, 0, $monat, 1, $jahr)-1)));

if (file_exists($termindatei)) {
 $dateiinhalt = file($termindatei);
}
else {
 exit("<strong>Die Datei \"$termindatei\" ist nicht vorhanden!</strong>");
}

for ($tag = 1; $tag <= (date("t", mktime(0, 0, 0, $monat, 1, $jahr))); $tag++) {
$ty = false;
$tring = "";
 foreach ($dateiinhalt as $element) {
  list($datum, $b, $c, $d, $e, $id) = explode("|", $element);
  $m = ($monat < 10 ? "0" : "") . $monat;
  $t = ($tag < 10 ? "0" : "") . $tag;
  if ($datum == "$jahr.$m.$t") {
   if (!strstr($tring, "$jahr.$monat.$tag")) {
    $heute = ($tag == date("j") && $monat == date("n") && $jahr == date("Y")) ? "<span style=\"background-color: $zellenhintergrund_highlight;\">$tag</span>" : $tag;
    array_push($zelle, "<a href=\"?monat=$monat&amp;jahr=$jahr&amp;anzeigen=$datum\" title=\"Eintr&auml;ge anzeigen\">$heute</a>");
    $ty = true;
    $tring .="$jahr.$monat.$tag-";
   }
  }
 }
 if (!$ty) {
  $heute = ($tag == date("j") && $monat == date("n") && $jahr == date("Y")) ? "<span style=\"background-color: $zellenhintergrund_highlight;\">$tag</span>" : $tag;
  array_push($zelle, $heute);
 }
}

$zaehler = 1;
foreach ($zelle as $element) {
 $spaltenende = ($zaehler % 7) ? "" : "</tr>\n<tr style=\"background-color: $zellenhintergrund_dunkel;\">";
 echo "<td>" . $element . "</td>$spaltenende";
 $zaehler++;
}

?>
</center>
</body>

Aber die Seite hat immer noch die Anzeige Fehler: shin.crystalblood.de
 
Auch

HTML:
<body>
<link rel=stylesheet type="text/css" href="http://shin.crystalblood.de/kalender.css">

entfernen. Und die CSS-Datei deinem normalen <head>-Bereich einbinden, nicht irgendwo anders.
 
Sieht immer noch so aus.
Hier die beiden Daten (also index und Kalender2):
HTML:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Lore Ipsum</title>
<style type="text/css">
<!--
body {
    font: 100%/1.4 Verdana, Arial, Helvetica, sans-serif;
    background: #42413C;
    margin: 0;
    padding: 0;
    color: #000;
}

/* ~~ Element-/Tag-Selektoren ~~ */
ul, ol, dl {
    padding: 0;
    margin: 0;
}
h1, h2, h3, h4, h5, h6, p {
    margin-top: 0;
    padding-right: 15px;
    padding-left: 15px;
}
a img {
    border: none;
}

a:link {
    color: #42413C;
    text-decoration: underline;
}
a:visited {
    color: #6E6C64;
    text-decoration: underline;
}
a:hover, a:active, a:focus {
    text-decoration: none;
}

.container {
    width: 960px;
    background: #FFF;
    margin: 0 auto;
}

.header {
    background: #ADB96E;
}

.sidebar1 {
    float: left;
    width: 250px;
    background: #EADCAE;
    padding-bottom: 10px;
}
.content {
    padding: 10px 0;
    width: 710px;
    float: left;
}

.content ul, .content ol { 
    padding: 0 15px 15px 40px; 
}

ul.nav {
    list-style: none;
    border-top: 1px solid #666; 
    margin-bottom: 15px;
}
ul.nav li {
    border-bottom: 1px solid #666;
}
ul.nav a, ul.nav a:visited {
    padding: 5px 5px 5px 15px;
    display: block;
    width: 230px;
    text-decoration: none;
    background: #C6D580;
}
ul.nav a:hover, ul.nav a:active, ul.nav a:focus {
    background: #ADB96E;
    color: #FFF;
}

.footer {
    padding: 10px 0;
    background: #CCC49F;
    position: relative;
    clear: both;
}

.fltrt {
    float: right;
    margin-left: 8px;
}
.fltlft {
    float: left;
    margin-right: 8px;
}
.clearfloat {
    clear:both;
    height:0;
    font-size: 1px;
    line-height: 0px;
}

.impressum {
    padding: 5px 5px 5px 15px;
    display: block;
    width: 180px;
    text-decoration: none;
    background: #C6D580;
    border: 1px solid #666;
    margin-bottom: 15px;
}
-->
</style></head>

<body>

<div class="container">
  <div class="header"><a href="#"><img src="banner.jpg" alt="logo" name="logo" width="961" height="150" id="logo" style="background: #C6D580; display:block;" /></a> 
    <!-- end .header --></div>
  <div class="sidebar1">
    <ul class="nav">
      <li><a href="index.php?go=startseite">Startseite</a></li>
      <li><a href="index.php?go=termine">Termine</a></li>
      <li><a href="index.php?go=bilder">Bilder</a></li>
      <li><a href="index.php?go=kontakt">Kontakt</a></li>
      <li><a href="index.php?go=anfahrt">Anfahrt</a></li>
    </ul>
    <p>    <?php include("kalender2.php");
     ?>
     </p>
    <!-- end .sidebar1 --></div>
  <div class="content">
<?php

    if (isset($_GET['go']))
    {
        switch($_GET['go'])
        {

            case 'startseite':    include('startseite.html');
                            break;

            case 'termine':  include('termine.html');
                            break;

            case 'bilder':    include('bilder.html');
                            break;

            case 'kontakt':  include('kontakt.html');
                            break;
            
            case 'anfahrt':  include('anfahrt.html');
                            break;
            
            case 'impressum':  include('impressum-inaktiv.html');
                            break;

            default:        include('startseite.html');
        }
    }
    else
    {
        include('startseite.html');
    }

?></p>
    <!-- end .content --></div>
  <div class="footer">
    <p>Copyright by the_zoker_09 <div align="right"><a href="index.php?go=impressum">Impressum</a></div></p>
    <!-- end .footer --></div>
  <!-- end .container --></div>
</body>
</html>

HTML:
<style type="text/css">
body, a, td, th {
 font-family: Verdana, Arial; font-size: 13px;
}

a, a:visited {
 color: #DD0000;
}
</style>
<center>
<?php
// Terminkalender - Kalender

require_once("einstellungen.inc.php");

$monat = date("n");
$jahr = date("Y");

if ($_GET) {
 $_GET["monat"] = $_GET["monat"] < 10 ? (ereg_replace("^0", "", $_GET["monat"])) : $_GET["monat"];
 $jahr = (($_GET["monat"] > 12) ? ($_GET["jahr"] + 1) : (($_GET["monat"] < 1) ? (trim($_GET["jahr"]) - 1) : trim($_GET["jahr"])));
 $monat = trim((($_GET["monat"] < 1) ? 12 : (($_GET["monat"] > 12) ? 1 : $_GET["monat"])));
}

$monatsname = strftime("%B", mktime(0, 0, 0, $monat, 1, $jahr));
$monatminus = $monat - 1; $monatplus = $monat + 1;
$jahrminus = $jahr - 1; $jahrplus = $jahr + 1;

echo <<<EOT
<script type="text/javascript">
function gehe_zu(datum) {
 if (datum != null) {
  var d = datum.split(",");
  if (d[0] < 13 && d[1] > 1901 && d[1] < 2038) {
   window.location.href="?monat=" + d[0] + "&jahr=" + d[1] + "";
  }
 }
}
</script>
<table border="0" cellPadding="6" cellSpacing="1">
<caption style="white-space: Nowrap;">
<strong>$terminkalender</strong><br>
<a href="?monat=$monatminus&amp;jahr=$jahr" title="Einen Monat zur&uuml;ck" style="text-decoration: None;">&larr;</a> 
$monatsname 
<a href="?monat=$monatplus&amp;jahr=$jahr" title="Einen Monat vorw&auml;rts" style="text-decoration: None;">&rarr;</a> 
&nbsp; <a href="?jahr=$jahrminus&amp;monat=$monat" title="Ein Jahr zur&uuml;ck" style="text-decoration: None;">&larr;</a> 
$jahr 
<a href="?jahr=$jahrplus&amp;monat=$monat" title="Einen Jahr vorw&auml;rts" style="text-decoration: None;">&rarr;</a> 
</caption>
<tr style="background-color: $tabellenkopf_hintergrund;">
<th>Mo</th><th>Di</th><th>Mi</th><th>Do</th><th>Fr</th><th>Sa</th><th>So</th>
</tr>
<tr style="background-color: $zellenhintergrund_dunkel;">
EOT;

$zelle = array_fill(0, 7, "&thinsp;");
$zelle = array_splice($zelle ,0 , (date("w", mktime(0, 0, 0, $monat, 1, $jahr)-1)));

if (file_exists($termindatei)) {
 $dateiinhalt = file($termindatei);
}
else {
 exit("<strong>Die Datei \"$termindatei\" ist nicht vorhanden!</strong>");
}

for ($tag = 1; $tag <= (date("t", mktime(0, 0, 0, $monat, 1, $jahr))); $tag++) {
$ty = false;
$tring = "";
 foreach ($dateiinhalt as $element) {
  list($datum, $b, $c, $d, $e, $id) = explode("|", $element);
  $m = ($monat < 10 ? "0" : "") . $monat;
  $t = ($tag < 10 ? "0" : "") . $tag;
  if ($datum == "$jahr.$m.$t") {
   if (!strstr($tring, "$jahr.$monat.$tag")) {
    $heute = ($tag == date("j") && $monat == date("n") && $jahr == date("Y")) ? "<span style=\"background-color: $zellenhintergrund_highlight;\">$tag</span>" : $tag;
    array_push($zelle, "<a href=\"?monat=$monat&amp;jahr=$jahr&amp;anzeigen=$datum\" title=\"Eintr&auml;ge anzeigen\">$heute</a>");
    $ty = true;
    $tring .="$jahr.$monat.$tag-";
   }
  }
 }
 if (!$ty) {
  $heute = ($tag == date("j") && $monat == date("n") && $jahr == date("Y")) ? "<span style=\"background-color: $zellenhintergrund_highlight;\">$tag</span>" : $tag;
  array_push($zelle, $heute);
 }
}

$zaehler = 1;
foreach ($zelle as $element) {
 $spaltenende = ($zaehler % 7) ? "" : "</tr>\n<tr style=\"background-color: $zellenhintergrund_dunkel;\">";
 echo "<td>" . $element . "</td>$spaltenende";
 $zaehler++;
}

?>
</center>

So hier habt ihr mal beide Datein :D

Ich dachte den <head> Bereich sollte ich löschen :?
 
Zurück
Oben