Iframe nach dem Inhalt anpassen(mal wieder)

TreX2006

Grünschnabel
Hallo,
bitte steinigt mich jetzt nicht, ich weiß das Thema gab es schon bestimmt zu oft das man es noch zählen kann. Ich hab auch die Suchfunktion verwendet und das nicht nur in einem Forum.

Problem in Kürze: In einer Tabelle wird ein Iframe aufgerufen, die Höhe der aufgerufenen Dateien variert stark. Das iframe soll sich jetzt größer oder kleiner machen in abhängigkeit vom inhalt.

Was ich bischer fand:
Hier im Forum sind zwei realisierbare Vorschläge die mir gefallen.
Der Lange: (http://www.tutorials.de/forum/html/...eite-aendern-wie.html?highlight=iframe+h%F6he)
hab zwar noch nicht getestet sieht aber schon sehr gut aus.
Der Kurze: (http://www.tutorials.de/forum/php/2...rames-automatisch-iframe-inhalt-anpassen.html)
Gefält mir persönlich besser, da kurz und verständlich( die Version von D@nger)
Die Frage: Ich würde gerne die kurze Methode verwenden, doch sie funktioniert nur beim Explorer beim Firefox wird das Iframe nicht kleiner wenn ich nach einer großen Datei eine Kleinere lade. Kann mir einer sagen was ich machen soll damit es auch im FF funktioniert?

Danke im vorraus
TreX

PS: hier die Seite für die ich das brauche http://patchworx.pa.funpic.de/main.php (Das projekt ist erst 2 tage alt, aber wen ich das iFrame problem gelöst habe dann kommt auch der Inhalt)
 
Zuletzt bearbeitet:
Unumgänglich? Nichts ist unumgänglich und genau aus diesem Grund versuche ich das iFrame zum laufen zu bringen. Die Include funktion von PHP würde die gesamte Seite neuladen, und das währe nicht gut bei vielen Graphiken außerdem wirden ein teil der Besucher auch ganz normale Modemuser sein. Der einzige Nachteil der iFrames ist, das sie nicht mit allen Browsern kompatibel sind. Aber wer nicht wenigstens ab und zu mal seine Browser aktualisiert oder JS abschaltet naja der kann hmmm weiß nicht was er kann, aber bestimmt nicht auf meine Seite.^^
 
Hallo habe zwar nicht die Lösung für dein Problem aber habe eben auch ein thread eröffnet, denn ich habe das gleiche Problem. Nur ich wäre froh wenn ich es überhaupt mal hinbekommen würde das sich bei mir was ändert.

Kannst dir ja mal meinen thread anschauen und mir vielleicht weiterhelfen-denn du hast ja auch ne php-seite(?) und irgendwie weiß ich nicht so recht wie ich das machen soll mit php und javascript zusammen.

http://http://www.tutorials.de/forum/php/250654-iframe-hoehe-anpassen.html

Danke,Olli
 
@Html immer wen ich auf dein Link klicke komme ich auf spiegel.de?

PHP und JS stören sich doch nicht gegenseitig. Du programmierst die Seite als ob es nur Html währe und wenn du php brauchst fügst du <?php ...phpcode... ?> ein^^.
Also für Explorer und zur Hälfte für Firefox steht oben ein Link zur Lösung (der kurze)

Aber wenn ich das mal hinkriegen sollte so wie ich das brauche, dann sag ich hier bescheid mit Quäll-Code^^.

PS: Es gibt eine ganz nette Variante, du mußt leider aber auf jeder seite die included wird ihr größe angeben.(die funktioniert auf jeden Fall)

edit:http://www.tutorials.de/forum/html/145044-i-frame-problem.html der post von vonsomatic scheint auch bedingt zu funktionieren, mal sehen ob es DIE Lösung ist, wenn man den halben Code wegschneidet^^. Die Version läuft diesmal besser bei FireFox Arghhhh
edit2: will mal nicht doppelposting, aber heureka die version schint zu funzeln... mit kleinen problemchen aber es .
 
Zuletzt bearbeitet:
Du hast mich da auf eine Idee gebracht. Und siehe da es klappt-fast. Nur leider noch nicht im IE.

Und zwar habe ich folgende Lösung angewendet: die erste.

http://http://www.tutorials.de/forum/html/172304-inline-frame-groesse-durch-geladene-seite-aendern-wie.html?highlight=iframe+h%F6he

Also im firefox funktioniert es , das frame wird sowohl größer als auch wieder kleiner.

Nur im IE nicht, da habe ich das Gefühl das die Funktion erst gar nicht ausgeführt wird. Der IE zieht mir das Fenster auf 1000px (die höhe im iframe angegeben).

Vielleicht liegt es an der art und weise wie ich den onload tag in der php seite eingebettet habe:

Code:
<?php

    /*
    myPHP Guestbook
    Copyright (C) 2003 - 2006  Claudio Pose
    myPHP Guestbook is a open source project of Networkarea.ch

    This program is free software; you can redistribute it and/or modify
    it under the terms of the GNU General Public License as published by
    the Free Software Foundation; either version 2 of the License, or
    (at your option) any later version.

    This program is distributed in the hope that it will be useful,
    but WITHOUT ANY WARRANTY; without even the implied warranty of
    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
    GNU General Public License for more details.
    */

    include("config.inc.php");
    include("functions.inc.php");
    connect();







    $sql_properties = mysql_query("SELECT
                                       bbcode,
                                       deactivate_html,
                                       default_style,
                                       default_template,
                                       entries_per_site,
                                       guestbook_status,
                                       guestbook_title,
                                       links_in_sitefunction,
                                       max_word_length,
                                       release_entries,
                                       show_ip,
                                       smilies,
                                       statistic,
                                       statistic_ban
                                   FROM
                                       ".$table."_properties");

    $properties    = mysql_fetch_assoc($sql_properties);
    $default_style = $properties['default_style'];

    $sql_template = mysql_query("SELECT
                                     bgcolor,
                                     bgimage,
                                     border,
                                     cellpadding,
                                     cellspacing,
                                     html,
                                     image_email,
                                     image_homepage,
                                     tablealign,
                                     tablewidth,
                                     tdcolor,
                                     td2color
                                 FROM
                                     ".$table."_template
                                 WHERE
                                     id='".$properties['default_template']."'");

    $template = mysql_fetch_assoc($sql_template);

    if ($properties['statistic']) {
        include("stats.inc.php");
    }

    $sql_count_entries = "SELECT
                              id
                          FROM
                              ".$table."_entries";

    if (isset($properties['release_entries']) AND $properties['release_entries'] == 1) {
        $sql_count_entries .= " WHERE status='1'";
    }

    $query_count_entries = mysql_query($sql_count_entries);
    $count_entries       = mysql_num_rows($query_count_entries);

    include("lang.inc.php");

    if (isset($_GET['page'])) {
        if (!is_numeric($_GET['page']) OR empty($_GET['page'])) {
            $page = 1;
        } else {
            $page = $_GET['page'];
        }
    } else {
        $page = 1;
    }

    $page               = mysql_escape_string($page);
    $pages_total        = ceil($count_entries/$properties['entries_per_site']) ;
    $page_start         = floor($page - $properties['links_in_sitefunction']/2) ;
    $page_start         =   $page_start <= 0 ?  1 : $page_start ;
    $page_end           = ($page_start + $properties['links_in_sitefunction']-1) ;
    $page_end           =   $page_end >= $pages_total ?  $pages_total : $page_end ;
    $page_max           = $page*$properties['entries_per_site'];
    $max_minus_per_page = $page_max-$properties['entries_per_site'];
    $page_entry_start   = $count_entries-$max_minus_per_page+1;

    echo "<?xml version=\"1.0\" encoding=\"".$encoding."\" ?>
    <!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\" xml:lang=\"".$lang_short."\" lang=\"".$lang_short."\"><head>
    <style type=\"text/css\">
    <!-- ";

    getStyle();

    echo " //-->
    </style>
    <title>".$properties['guestbook_title']."</title>
    </head>";

    if ($template['bgimage'] == "") {
        echo "<body bgcolor=\"".$template['bgcolor']."\" onload=\"parent.resize_me('guestbook')\">";
    }

    if ($template['bgimage'] != "") {
        echo "<body bgcolor=\"".$template['bgcolor']."\" background=\"".$template['bgimage']."\" onload=\"parent.resize_me('guestbook')\">";
    }

    if ($properties['guestbook_status']) {
        echo "<div align=\"".$template['tablealign']."\">".$ms[16]."<br /><b><a href=\"".$url."insert.php";

        if (isset($get_lang)) {
            echo "?lang=".$_GET['lang']."";
        }

        echo "\" title=\"".$ms[17]."\">".$ms[17]."</a></b><br /><br />";

        if ($page > 1) {
            $page_minus = $page-1;
            echo " <a href=\"".$url."/index.php?page=".$page_minus."";


            if ($get_lang) {
                echo "&lang=".$_GET['lang']."";
            }

            echo "\"><img src=\"".$url."/images/links.gif\" alt=\"".$ms[6]."\" border=\"0\" /></a>";
        }

        if ($page_start > 1) {
            echo " <a href=\"".$url."/index.php?page=1";

            if ($get_lang) {
                echo "&lang=".$_GET['lang']."";
            }

            echo "\">1</a> ...";
        }

        for ($i = $page_start; $i <= $page_end ;$i++) {
            if ($i == $page) {
                echo "<b>".$i."</b>";
            } else {
                echo " <a href=\"".$url."/index.php?page=".$i."";

                if ($get_lang) {
                    echo "&lang=".$_GET['lang']."";
                }

                echo "\">".$i."</a> ";
            }
        }

        if ($page_end < $pages_total) {
            echo " ... <a href=\"".$url."/index.php?page=".$pages_total."";

            if ($get_lang) {
                echo "&lang=".$_GET['lang']."";
            }

            echo "\">".$pages_total."</a>";
        }

        if ($page < $pages_total) {
            $page_plus = $page+1;
            echo " <a href=\"".$url."/index.php?page=".$page_plus."";

            if ($get_lang) {
                echo "&lang=".$_GET['lang']."";
            }

            echo "\"><img src=\"".$url."/images/rechts.gif\" alt=\"".$ms[18]."\" border=\"0\" /></a>";
        }

        echo "</div>
        <br />";

        if ($properties['release_entries']) {
            $sql_entries = mysql_query("SELECT
                                            comment,
                                            date,
                                            email,
                                            homepage,
                                            icq,
                                            id,
                                            ip,
                                            name,
                                            text,
                                            time
                                        FROM
                                            ".$table."_entries
                                        WHERE
                                            status='1'
                                        ORDER BY
                                            id DESC
                                        LIMIT
                                            ".(($page-1)*$properties['entries_per_site'] ).",".$properties['entries_per_site']."");
        } else {
            $sql_entries = mysql_query("SELECT
                                            comment,
                                            date,
                                            email,
                                            homepage,
                                            icq,
                                            id,
                                            ip,
                                            name,
                                            text,
                                            time
                                        FROM
                                            ".$table."_entries
                                        ORDER BY
                                            id DESC
                                        LIMIT
                                            ".(($page-1)*$properties['entries_per_site'] ).",".$properties['entries_per_site']."");
        }

        while ($entries = mysql_fetch_assoc($sql_entries)) {
            $page_entry_start = $page_entry_start-1;

            if ($properties['deactivate_html']) {
                $entries['text'] = htmlentities($entries['text']);
            }

            $email               = $entries['email'];
            $entries['comment']  = nl2br($entries['comment']);
            $entries['email']    = strip_tags($entries['email']);
            $entries['email']    = noSpam($entries['email']);
            $entries['email']    = stripslashes($entries['email']);
            $entries['homepage'] = stripslashes($entries['homepage']);
            $entries['homepage'] = strip_tags($entries['homepage']);
            $entries['homepage'] = htmlentities($entries['homepage']);
            $entries['id']       = $page_entry_start;
            $entries['name']     = htmlentities($entries['name']);
            $entries['name']     = stripslashes($entries['name']);
            $entries['text']     = badwords($entries['text']);
            $entries['text']     = shortWords($entries['text'], $properties['max_word_length']);
            $entries['text']     = nl2br($entries['text']);
            $entries['text']     = stripslashes($entries['text']);

            if ($properties['bbcode']) {
                $entries['text']    = bbcode($entries['text']);
                $entries['comment'] = bbcode($entries['comment']);
            }

            if ($properties['smilies']) {
                $entries['text']    = smilies($entries['text']);
                $entries['comment'] = smilies($entries['comment']);
            }

            $template_data = $template['html'];
            $template_data = str_replace("<\$border\$>", $template['border'], $template_data);
            $template_data = str_replace("<\$cellpadding\$>", $template['cellpadding'], $template_data);
            $template_data = str_replace("<\$cellspacing\$>", $template['cellspacing'], $template_data);
            $template_data = str_replace("<\$date\$>", $entries['date'], $template_data);
            $template_data = str_replace("<\$id\$>", $entries['id'], $template_data);
            $template_data = str_replace("<\$name\$>", $entries['name'], $template_data);
            $template_data = str_replace("<\$tablealign\$>", $template['tablealign'], $template_data);
            $template_data = str_replace("<\$tablewidth\$>", $template['tablewidth'], $template_data);
            $template_data = str_replace("<\$tdcolor\$>", $template['tdcolor'], $template_data);
            $template_data = str_replace("<\$td2color\$>", $template['td2color'], $template_data);
            $template_data = str_replace("<\$text\$>", $entries['text'], $template_data);
            $template_data = str_replace("<\$time\$>", $entries['time'], $template_data);

            if ($entries['comment']) {
                $template_data = str_replace("<\$comment\$>", "<br /><br /><table cellpadding=\"2\" cellspacing=\"1\" align=\"center\" width=\"95%\" class=\"guestbook_table\"><tr><td bgcolor=\"".$template['tdcolor']."\" align=\"left\"><b>".$ms[116].":</b><br />".$entries['comment']."</td></tr></table>", $template_data);
            } else {
                $template_data = str_replace("<\$comment\$>", "", $template_data);
            }

            if ($properties['show_ip']) {
                $template_data = str_replace("<\$ip\$>", "IP: ".$entries['ip']."<br />", $template_data);
            } else {
                $template_data = str_replace("<\$ip\$>", "", $template_data);
            }

            if ($entries['email'] == "") {
                $template_data = str_replace("<\$email\$>", "", $template_data);
                $template_data = str_replace("<\$email_icon\$>", "", $template_data);
            } else {
                $template_data = str_replace("<\$email\$>", "<a href=\"mailto:".$entries['email']."\" title=\"".$entries['email']."\">".$entries['email']."</a>", $template_data);
                $template_data = str_replace("<\$email_icon\$>", "<a href=\"mailto:".$entries['email']."\"><img src=\"".$url."/images/icons/email/".$template['image_email']."\" border=\"0\" alt=\"".$entries['email']."\" /></a>", $template_data);
            }

            if ($entries['homepage'] == "" OR $entries['homepage'] == "http://") {
                $template_data = str_replace("<\$homepage\$>", "", $template_data);
                $template_data = str_replace("<\$homepage_icon\$>", "", $template_data);
            } else {
                $template_data = str_replace("<\$homepage\$>", "<a href=\"".$entries['homepage']."\" title=\"".$entries['homepage']."\">".$entries['homepage']."</a>", $template_data);
                $template_data = str_replace("<\$homepage_icon\$>", "<a href=\"".$entries['homepage']."\" target=\"_blank\"><img src=\"".$url."/images/icons/homepage/".$template['image_homepage']."\" border=\"0\" alt=\"".$entries['homepage']."\" /></a>", $template_data);
            }

            if ($entries['icq'] == 0) {
                $template_data = str_replace("<\$icq\$>", "", $template_data);
                $template_data = str_replace("<\$icq_icon\$>", "", $template_data);
            } else {
                $template_data = str_replace("<\$icq\$>", "<a href=\"http://web.icq.com/whitepages/about_me?Uin=".$entries['icq']."\">".$entries['icq']."</a>", $template_data);
                $template_data = str_replace("<\$icq_icon\$>", "<a href=\"http://web.icq.com/whitepages/about_me?Uin=".$entries['icq']."\" target=\"_blank\"><img src=\"http://wwp.icq.com/scripts/online.dll?icq=".$entries['icq']."&amp;img=5\" border=\"0\" alt=\"".$entries['icq']."\" /></a>", $template_data);
            }

            echo "<div align=\"".$template['tablealign']."\">
            ".$template_data."
            </div>";
        }

        echo "<p align=\"".$template['tablealign']."\">";


        if ($page > 1) {
            $page_minus = $page-1;
            echo " <a href=\"".$url."/index.php?page=".$page_minus."";


            if ($get_lang) {
                echo "&lang=".$_GET['lang']."";
            }

            echo "\"><img src=\"".$url."/images/links.gif\" alt=\"".$ms[6]."\" border=\"0\" /></a>";
        }

        if ($page_start > 1) {
            echo " <a href=\"".$url."/index.php?page=1";

            if ($get_lang) {
                echo "&lang=".$_GET['lang']."";
            }

            echo "\">1</a> ...";
        }

        for ($i = $page_start; $i <= $page_end ;$i++) {
            if ($i == $page) {
                echo "<b>".$i."</b>";
            } else {
                echo " <a href=\"".$url."/index.php?page=".$i."";

                if ($get_lang) {
                    echo "&lang=".$_GET['lang']."";
                }

                echo "\">".$i."</a> ";
            }
        }

        if ($page_end < $pages_total) {
            echo " ... <a href=\"".$url."/index.php?page=".$pages_total."";

            if ($get_lang) {
                echo "&lang=".$_GET['lang']."";
            }

            echo "\">".$pages_total."</a>";
        }

        if ($page < $pages_total) {
            $page_plus = $page+1;
            echo " <a href=\"".$url."/index.php?page=".$page_plus."";

            if ($get_lang) {
                echo "&lang=".$_GET['lang']."";
            }

            echo "\"><img src=\"".$url."/images/rechts.gif\" alt=\"".$ms[18]."\" border=\"0\" /></a>";
        }

    echo '</p>';

    } else {
        echo "<b>".$ms[34]."</b>";
    }

    echo "</body>
    </html>";
?>

Kannst ja mal drüber schauen, hätten ja beide was davon ;)

Sorry aber irgendwie klappt das nicht mit den links...

Hier nochmal:

http://www.tutorials.de/forum/html/...eite-aendern-wie.html?highlight=iframe+h%F6he
 
Also bei mir scheints zu funktionieren. Hab dieses Thema verwendet.
http://www.tutorials.de/forum/html/145044-i-frame-problem.html
es geht sowohl mit firefox als auch im Explorer, mit einer geringfügigen modifikation, da Firefox trotzdem die iFrames länger darstellt als Explorer(aber den wert für d sollte glaube jeder für sich ausprobieren.. Aber ich hab nur den Teil des @uelcodes verwendet der das vertikale Scalieren erlaubt also die Höhe.

So sieht es bei mir aus, ganz oben zwischen Head und Body (ka wie es hin kommt) auf der Seite die das iFrame besitzt(da wo die Seiten included werden)
<script type="text/javascript">
<!--
function resize_me(n)
{
d=30;ifObj=document.getElementsByName(n)[0];p=(document.all)?'scroll':'offset';

eval("ifObj.style.height=window.frames[n].document.getElementsByTagName('body')[0]."+p+"Height+"+d);
}
//-->
</script>

Dann nur noch der Aufruf auf der selben Seite: Hier wird dann das was man einfügen will stehen.
<iframe style="padding-top: 1" name="content" src="aboutme.php" frameborder="0" scrolling=no height="500" width="100%" border="0">
<p>Leider unterstützt ihr Broweser keine iFrames...so ein pech aber auch.</p>


</iframe>

Und zu aller letzt bekommt jede Seite die Included wird so ein teilchen:
<body onload="parent.resize_me('content')">


Also nach Genau 2 Tagen anstrengender suche bin ich glücklich. fals einer eine noch genauere beschreibung haben möchte soll es nur sagen.
 
Also noch mal zu meinem Problem. Ich habe eine seite gaestebuch.html. Auf dieser Seite befindet sich das iframe in welches die seite index.php geladen wird. Das ist die Startseite des Gästebuches. Nun habe ich es genau so gemacht wie oben beschrieben.

Aber im firefox klappts, nur nicht im IE.

Was mache ich verkehrt ?


Hier die seite gaestebuch.html mit dem javascript und dem iframe:

Code:
<html>
<head>
<title>Freiwilllige Feuerwehr Hübingen</title>
<meta http-equiv="content-type" content=
"text/html; charset=iso-8859-1">
<meta http-equiv="imagetoolbar" content="no">
<meta http-equiv="Content-Script-Type" content="text/javascript">
<meta http-equiv="Content-Style-Type" content="text/css">
<meta name="generator" content="Ulli Meybohms HTML EDITOR">
<meta name="author" content="Oliver Noll">
<meta name="description" content=
"Freiwillige Feuerwehr Hübingen">
<meta name="keywords" content=
"Feuerwehr Hübingen, Feuerwehr, Hübingen, Jugendfeuerwehr, LF8/6, Einsätze, Förderverein">
<meta name="classification" content="Offizielle Homepage">
<meta name="robots" content="index">
<meta name="revisit-after" content="90 days">
<meta name="DC.Title" content=
"Freiwillige Feuerwehr Hübingen">
<meta name="DC.Creator" content="Oliver Noll">
<meta name="DC.Subject" content=
"Freiwillige Feuerwehr Hübingen">
<meta name="DC.Description" content=
"Freiwillige Feuerwehr Hübingen: Startseite">
<meta name="DC.Publisher" content="Oliver Noll">
<meta name="DC.Type" content="Text">
<meta name="DC.Format" content="text/html">
<meta name="DC.Identifier" content=
"http://www.feuerwehr-huebingen.de/">
<meta name="DC.Language" content="de">
<meta name="DC.Coverage" content="Feuerwehr">
<meta name="DC.Rights" content="http://www.feuerwehr-huebingen.de/impressum.html">
<link rel="stylesheet" href="navigation.css" type="text/css">
<link href="../css/text.css" rel="stylesheet" type="text/css">
<link href="../css/design.css" rel="stylesheet" type="text/css">
<link href="../css/menue3.css" rel="stylesheet" type="text/css">


<script type="text/javascript" language="JavaScript">
<!--
function machRahmen()
{
if(top.frames.length<1)
top.location.href="../index.html?gaestebuch/gaestebuch.html"
}
//-->
</script>

<!-- Begin Grab This - You'll need this external CSS file and the IE Statement below -->


<!--[if IE]>
<style type="text/css" media="screen">
#menu{float:none;} /* This is required for IE to avoid positioning bug when placing content first in source. */
/* IE Menu CSS */
/* csshover.htc file version: V1.21.041022 - Available for download from: http://www.xs4all.nl/~peterned/csshover.html */
body{behavior:url(css/csshover.htc);
font-size:100%; /* to enable text resizing in IE */
}
#menu ul li{float:left; width: 100%;}
#menu h2, #menu a{height:19px;font:bold 10pt arial,helvetica,sans-serif;}
</style>
<![endif]-->

<!-- End Grab This -->

<script type="text/javascript">
<!--
function resize_me(n)
{
d=30;ifObj=document.getElementsByName(n)[0];p=(document.all)?'scroll':'offset';

eval("ifObj.style.height=window.frames[n].document.getElementsByTagName('body')[0]."+p+"Height+"+d);
}
//-->
</script>


</head>

<body onload="machRahmen();">







<table width="100%" height="21" cellpadding="0"  cellspacing="0" class="hg_grau_rahmenunten">
<tr>
<td>&nbsp;</td>
</tr>
</table>  


<div id="scroll" align="center">

<table  border="0" align="left" class="fenster">
<tr ><td  rowspan="2" class="leerzeile_links">&nbsp;</td>
<td height="10">&nbsp;</td></tr>
<tr>
<td>

<table cellpadding="0"  cellspacing="0" class="tab_rahmen">
  <tr>
    <td  colspan="3" class="leerzeile_oben_oben"></td>
    </tr>
  <tr>
    <td width="17">&nbsp;</td>
    <td width="495" ><p class="ueberschrift">- G&auml;stebuch - </p></td>
    <td width="17">&nbsp;</td>
  </tr>
  <tr>
    <td colspan="3" class="leerzeile_oben">&nbsp;</td>
    </tr>
  <tr>
    <td width="17" >&nbsp;</td>
    <td >

<iframe style="padding-top: 1" name="test" src="index.php" frameborder="0" scrolling=no height="500" width="100%" border="0">
<p>Leider unterstützt ihr Broweser keine iFrames...so ein pech aber auch.</p>


</iframe>


</td>
    <td width="17"">&nbsp;</td>
  </tr>
  <tr>
    <td  colspan="6" class="leerzeile_unten" ></td>
    </tr>
</table>
</td></tr>

</table>
</div>

</body>
</html>


Und hier die seite index.php mit dem onload:

Code:
<?php

    /*
    myPHP Guestbook
    Copyright (C) 2003 - 2006  Claudio Pose
    myPHP Guestbook is a open source project of Networkarea.ch

    This program is free software; you can redistribute it and/or modify
    it under the terms of the GNU General Public License as published by
    the Free Software Foundation; either version 2 of the License, or
    (at your option) any later version.

    This program is distributed in the hope that it will be useful,
    but WITHOUT ANY WARRANTY; without even the implied warranty of
    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
    GNU General Public License for more details.
    */

    include("config.inc.php");
    include("functions.inc.php");
    connect();







    $sql_properties = mysql_query("SELECT
                                       bbcode,
                                       deactivate_html,
                                       default_style,
                                       default_template,
                                       entries_per_site,
                                       guestbook_status,
                                       guestbook_title,
                                       links_in_sitefunction,
                                       max_word_length,
                                       release_entries,
                                       show_ip,
                                       smilies,
                                       statistic,
                                       statistic_ban
                                   FROM
                                       ".$table."_properties");

    $properties    = mysql_fetch_assoc($sql_properties);
    $default_style = $properties['default_style'];

    $sql_template = mysql_query("SELECT
                                     bgcolor,
                                     bgimage,
                                     border,
                                     cellpadding,
                                     cellspacing,
                                     html,
                                     image_email,
                                     image_homepage,
                                     tablealign,
                                     tablewidth,
                                     tdcolor,
                                     td2color
                                 FROM
                                     ".$table."_template
                                 WHERE
                                     id='".$properties['default_template']."'");

    $template = mysql_fetch_assoc($sql_template);

    if ($properties['statistic']) {
        include("stats.inc.php");
    }

    $sql_count_entries = "SELECT
                              id
                          FROM
                              ".$table."_entries";

    if (isset($properties['release_entries']) AND $properties['release_entries'] == 1) {
        $sql_count_entries .= " WHERE status='1'";
    }

    $query_count_entries = mysql_query($sql_count_entries);
    $count_entries       = mysql_num_rows($query_count_entries);

    include("lang.inc.php");

    if (isset($_GET['page'])) {
        if (!is_numeric($_GET['page']) OR empty($_GET['page'])) {
            $page = 1;
        } else {
            $page = $_GET['page'];
        }
    } else {
        $page = 1;
    }

    $page               = mysql_escape_string($page);
    $pages_total        = ceil($count_entries/$properties['entries_per_site']) ;
    $page_start         = floor($page - $properties['links_in_sitefunction']/2) ;
    $page_start         =   $page_start <= 0 ?  1 : $page_start ;
    $page_end           = ($page_start + $properties['links_in_sitefunction']-1) ;
    $page_end           =   $page_end >= $pages_total ?  $pages_total : $page_end ;
    $page_max           = $page*$properties['entries_per_site'];
    $max_minus_per_page = $page_max-$properties['entries_per_site'];
    $page_entry_start   = $count_entries-$max_minus_per_page+1;

    echo "<?xml version=\"1.0\" encoding=\"".$encoding."\" ?>
    <!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\" xml:lang=\"".$lang_short."\" lang=\"".$lang_short."\"><head>
    <style type=\"text/css\">
    <!-- ";

    getStyle();

    echo " //-->
    </style>
    <title>".$properties['guestbook_title']."</title>
    </head>";

    if ($template['bgimage'] == "") {
        echo "<body bgcolor=\"".$template['bgcolor']."\" onload=\"parent.resize_me('test')\">";
    }

    if ($template['bgimage'] != "") {
        echo "<body bgcolor=\"".$template['bgcolor']."\" background=\"".$template['bgimage']."\" onload=\"parent.resize_me('test')\">";
    }

    if ($properties['guestbook_status']) {
        echo "<div align=\"".$template['tablealign']."\">".$ms[16]."<br /><b><a href=\"".$url."insert.php";

        if (isset($get_lang)) {
            echo "?lang=".$_GET['lang']."";
        }

        echo "\" title=\"".$ms[17]."\">".$ms[17]."</a></b><br /><br />";

        if ($page > 1) {
            $page_minus = $page-1;
            echo " <a href=\"".$url."/index.php?page=".$page_minus."";


            if ($get_lang) {
                echo "&lang=".$_GET['lang']."";
            }

            echo "\"><img src=\"".$url."/images/links.gif\" alt=\"".$ms[6]."\" border=\"0\" /></a>";
        }

        if ($page_start > 1) {
            echo " <a href=\"".$url."/index.php?page=1";

            if ($get_lang) {
                echo "&lang=".$_GET['lang']."";
            }

            echo "\">1</a> ...";
        }

        for ($i = $page_start; $i <= $page_end ;$i++) {
            if ($i == $page) {
                echo "<b>".$i."</b>";
            } else {
                echo " <a href=\"".$url."/index.php?page=".$i."";

                if ($get_lang) {
                    echo "&lang=".$_GET['lang']."";
                }

                echo "\">".$i."</a> ";
            }
        }

        if ($page_end < $pages_total) {
            echo " ... <a href=\"".$url."/index.php?page=".$pages_total."";

            if ($get_lang) {
                echo "&lang=".$_GET['lang']."";
            }

            echo "\">".$pages_total."</a>";
        }

        if ($page < $pages_total) {
            $page_plus = $page+1;
            echo " <a href=\"".$url."/index.php?page=".$page_plus."";

            if ($get_lang) {
                echo "&lang=".$_GET['lang']."";
            }

            echo "\"><img src=\"".$url."/images/rechts.gif\" alt=\"".$ms[18]."\" border=\"0\" /></a>";
        }

        echo "</div>
        <br />";

        if ($properties['release_entries']) {
            $sql_entries = mysql_query("SELECT
                                            comment,
                                            date,
                                            email,
                                            homepage,
                                            icq,
                                            id,
                                            ip,
                                            name,
                                            text,
                                            time
                                        FROM
                                            ".$table."_entries
                                        WHERE
                                            status='1'
                                        ORDER BY
                                            id DESC
                                        LIMIT
                                            ".(($page-1)*$properties['entries_per_site'] ).",".$properties['entries_per_site']."");
        } else {
            $sql_entries = mysql_query("SELECT
                                            comment,
                                            date,
                                            email,
                                            homepage,
                                            icq,
                                            id,
                                            ip,
                                            name,
                                            text,
                                            time
                                        FROM
                                            ".$table."_entries
                                        ORDER BY
                                            id DESC
                                        LIMIT
                                            ".(($page-1)*$properties['entries_per_site'] ).",".$properties['entries_per_site']."");
        }

        while ($entries = mysql_fetch_assoc($sql_entries)) {
            $page_entry_start = $page_entry_start-1;

            if ($properties['deactivate_html']) {
                $entries['text'] = htmlentities($entries['text']);
            }

            $email               = $entries['email'];
            $entries['comment']  = nl2br($entries['comment']);
            $entries['email']    = strip_tags($entries['email']);
            $entries['email']    = noSpam($entries['email']);
            $entries['email']    = stripslashes($entries['email']);
            $entries['homepage'] = stripslashes($entries['homepage']);
            $entries['homepage'] = strip_tags($entries['homepage']);
            $entries['homepage'] = htmlentities($entries['homepage']);
            $entries['id']       = $page_entry_start;
            $entries['name']     = htmlentities($entries['name']);
            $entries['name']     = stripslashes($entries['name']);
            $entries['text']     = badwords($entries['text']);
            $entries['text']     = shortWords($entries['text'], $properties['max_word_length']);
            $entries['text']     = nl2br($entries['text']);
            $entries['text']     = stripslashes($entries['text']);

            if ($properties['bbcode']) {
                $entries['text']    = bbcode($entries['text']);
                $entries['comment'] = bbcode($entries['comment']);
            }

            if ($properties['smilies']) {
                $entries['text']    = smilies($entries['text']);
                $entries['comment'] = smilies($entries['comment']);
            }

            $template_data = $template['html'];
            $template_data = str_replace("<\$border\$>", $template['border'], $template_data);
            $template_data = str_replace("<\$cellpadding\$>", $template['cellpadding'], $template_data);
            $template_data = str_replace("<\$cellspacing\$>", $template['cellspacing'], $template_data);
            $template_data = str_replace("<\$date\$>", $entries['date'], $template_data);
            $template_data = str_replace("<\$id\$>", $entries['id'], $template_data);
            $template_data = str_replace("<\$name\$>", $entries['name'], $template_data);
            $template_data = str_replace("<\$tablealign\$>", $template['tablealign'], $template_data);
            $template_data = str_replace("<\$tablewidth\$>", $template['tablewidth'], $template_data);
            $template_data = str_replace("<\$tdcolor\$>", $template['tdcolor'], $template_data);
            $template_data = str_replace("<\$td2color\$>", $template['td2color'], $template_data);
            $template_data = str_replace("<\$text\$>", $entries['text'], $template_data);
            $template_data = str_replace("<\$time\$>", $entries['time'], $template_data);

            if ($entries['comment']) {
                $template_data = str_replace("<\$comment\$>", "<br /><br /><table cellpadding=\"2\" cellspacing=\"1\" align=\"center\" width=\"95%\" class=\"guestbook_table\"><tr><td bgcolor=\"".$template['tdcolor']."\" align=\"left\"><b>".$ms[116].":</b><br />".$entries['comment']."</td></tr></table>", $template_data);
            } else {
                $template_data = str_replace("<\$comment\$>", "", $template_data);
            }

            if ($properties['show_ip']) {
                $template_data = str_replace("<\$ip\$>", "IP: ".$entries['ip']."<br />", $template_data);
            } else {
                $template_data = str_replace("<\$ip\$>", "", $template_data);
            }

            if ($entries['email'] == "") {
                $template_data = str_replace("<\$email\$>", "", $template_data);
                $template_data = str_replace("<\$email_icon\$>", "", $template_data);
            } else {
                $template_data = str_replace("<\$email\$>", "<a href=\"mailto:".$entries['email']."\" title=\"".$entries['email']."\">".$entries['email']."</a>", $template_data);
                $template_data = str_replace("<\$email_icon\$>", "<a href=\"mailto:".$entries['email']."\"><img src=\"".$url."/images/icons/email/".$template['image_email']."\" border=\"0\" alt=\"".$entries['email']."\" /></a>", $template_data);
            }

            if ($entries['homepage'] == "" OR $entries['homepage'] == "http://") {
                $template_data = str_replace("<\$homepage\$>", "", $template_data);
                $template_data = str_replace("<\$homepage_icon\$>", "", $template_data);
            } else {
                $template_data = str_replace("<\$homepage\$>", "<a href=\"".$entries['homepage']."\" title=\"".$entries['homepage']."\">".$entries['homepage']."</a>", $template_data);
                $template_data = str_replace("<\$homepage_icon\$>", "<a href=\"".$entries['homepage']."\" target=\"_blank\"><img src=\"".$url."/images/icons/homepage/".$template['image_homepage']."\" border=\"0\" alt=\"".$entries['homepage']."\" /></a>", $template_data);
            }

            if ($entries['icq'] == 0) {
                $template_data = str_replace("<\$icq\$>", "", $template_data);
                $template_data = str_replace("<\$icq_icon\$>", "", $template_data);
            } else {
                $template_data = str_replace("<\$icq\$>", "<a href=\"http://web.icq.com/whitepages/about_me?Uin=".$entries['icq']."\">".$entries['icq']."</a>", $template_data);
                $template_data = str_replace("<\$icq_icon\$>", "<a href=\"http://web.icq.com/whitepages/about_me?Uin=".$entries['icq']."\" target=\"_blank\"><img src=\"http://wwp.icq.com/scripts/online.dll?icq=".$entries['icq']."&amp;img=5\" border=\"0\" alt=\"".$entries['icq']."\" /></a>", $template_data);
            }

            echo "<div align=\"".$template['tablealign']."\">
            ".$template_data."
            </div>";
        }

        echo "<p align=\"".$template['tablealign']."\">";


        if ($page > 1) {
            $page_minus = $page-1;
            echo " <a href=\"".$url."/index.php?page=".$page_minus."";


            if ($get_lang) {
                echo "&lang=".$_GET['lang']."";
            }

            echo "\"><img src=\"".$url."/images/links.gif\" alt=\"".$ms[6]."\" border=\"0\" /></a>";
        }

        if ($page_start > 1) {
            echo " <a href=\"".$url."/index.php?page=1";

            if ($get_lang) {
                echo "&lang=".$_GET['lang']."";
            }

            echo "\">1</a> ...";
        }

        for ($i = $page_start; $i <= $page_end ;$i++) {
            if ($i == $page) {
                echo "<b>".$i."</b>";
            } else {
                echo " <a href=\"".$url."/index.php?page=".$i."";

                if ($get_lang) {
                    echo "&lang=".$_GET['lang']."";
                }

                echo "\">".$i."</a> ";
            }
        }

        if ($page_end < $pages_total) {
            echo " ... <a href=\"".$url."/index.php?page=".$pages_total."";

            if ($get_lang) {
                echo "&lang=".$_GET['lang']."";
            }

            echo "\">".$pages_total."</a>";
        }

        if ($page < $pages_total) {
            $page_plus = $page+1;
            echo " <a href=\"".$url."/index.php?page=".$page_plus."";

            if ($get_lang) {
                echo "&lang=".$_GET['lang']."";
            }

            echo "\"><img src=\"".$url."/images/rechts.gif\" alt=\"".$ms[18]."\" border=\"0\" /></a>";
        }

    echo '</p>';

    } else {
        echo "<b>".$ms[34]."</b>";
    }

    echo "</body>
    </html>";
?>

Im firefox wird das frame wie gewollt auf die größe des inhaltes angepasst.
Der IE macht mir das iframe auf die Größe die ich angegeben habe, also 500px und zieht mir das Gästebuch auseinander.

Wäre echt dankbar wenn jemand den Fehler findet.

Danke,Olli
 
Juhu,Juhu es klappt. Habe endlich den Fehler gefunden.

Der IE hat sich an folgender Zeile gestört:
<?xml version=\"1.0\" encoding=\"".$encoding."\" ?>

Könnt ihr mir sagen, was das bedeutet und ob es schlimm ist wenn diese Zeile gelöscht wird.
Bisher sind mir dadurch noch keine negativen Dinge aufgefallen. Jetzt klappt auch endlich das Script. Ich bin so Happy.

// edit 1

Hallo, ich bins nochmal. Habe ja gehofft mich wegen diesem Thema nicht mehr hier melden zu müssen, nur leider habe ich gerade noch einen Fehler festgestellt.

Also nochmal zur erklärung: Habe eine seite gaestebuch.html in der das iframe liegt. In dieses iframe wird die seite index.php geladen und das iframe mit dem javascript genau auf die höhe des inhaltes angepasst. So jetzt befindet sich aber auf der index.php ein link der die seite insert.php im iframe öffnet. Nur leider bleibt dann die Größe des iframes erhalten. Aktuallisiert man jetzt die Seite über den Browser so passt sich das iframe jetzt auch an die größe der zweiten seite an. Habe aber ebenfalls den Funktionsaufruf auf der zweiten Seite.
Nur es klappt halt nicht nachdem die seite über den link geladen wurde sondern erst nach aktuallisierung.

Die Javascript-Konsole des Firefox bringt mir auf der zweiten seite den Fehler :
Fehler:
window.frames[n].document.getElementsByTagName("body")[0] has no properties
Quelldatei: http://localhost/feuerwehr/gaestebuch/gaestebuch.html
Zeile: 73

Bitte helft mir da nochmal weiter, dann wäre ich der glücklichste Mensch auf der Welt wenn das endlich funktionieren würde.

mfg,Olli

// edit 2

Hallo zusammen...

Habe auf meiner Homepage ein Javascript eingebaut und bekomme in der Javascript-Konsole des Firefox folgenden Fehler:

window.frames[n].document.getElementsByTagName("body")[0] has no properties

Was bedeutet der Fehler?


mfg, Olli
 

Neue Beiträge

Zurück