Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Programmieren allgemein (https://www.delphipraxis.net/40-programmieren-allgemein/)
-   -   PHP: Mit <? include ("seite.html") ;?> Frame laden (https://www.delphipraxis.net/102185-php-mit-include-seite-html-%3B-frame-laden.html)

ferby 24. Okt 2007 18:38


PHP: Mit <? include ("seite.html") ;?> Frame
 
Hallo,

ich habe folgendes Problem,
mit
<? include ("irgendwas.html") ;?>
kann ich eine Seite laden, aber ich will jetzt, das diese Seite in einen anderen Frame geladen wird, geht das??

Also ich habe zwei Frames (Menü, Kontent) , die Links im Menü schauen so aus menue.php?contentseite=news.html ,
sprich es ruft sich selbst wieder auf, wie kann ich jetzt aus der PHP Datei den anderen Frame laden.

Achtung: ich weiß das es mit target geht, aber ich brauche das so^^
es darf kein js vorkommen.


thx 4 help

mkinzler 24. Okt 2007 18:46

Re: PHP: Mit <? include ("seite.html") ;?> F
 
Code:
<frame src="irgendwas.html">

mirage228 24. Okt 2007 18:46

Re: PHP: Mit <? include ("seite.html") ;?> F
 
Wie wärs mit

Code:
<frame src="<?=$_GET['content'] ?>">
Du solltest jedoch den übergebenen Parameter vorher prüfen, ansonsten hast Du eine große Sicherheitslücke offen!

Ein Beispiel (von vielen):
Code:
<frame src="<? $content = verify_content($_GET['content']); echo $content; ?>">
mfG
mirage228

DP-Maintenance 24. Okt 2007 18:46

DP-Maintenance
 
Dieses Thema wurde von "Matze" von "Object-Pascal / Delphi-Language" nach "Programmieren allgemein" verschoben.
Sprache: PHP -> keine Delphi-Frage

ferby 24. Okt 2007 18:51

Re: PHP: Mit <? include ("seite.html") ;?> F
 
ich glaube ihr habt mein problemm nicht ganz verstandne, kann das sein?

ich habe ja schon ein frameset....

oder steh ich grad auf der leiter?


ich will, wenn ich eine php seite im frame a aufrufe, das sich dann die seite im frame b auch ändert, und twar soll das die php seite machen.


sprich, ich will zwei seiten mit einen link ändern, aber ohne javascript zu verwenden und ohne das das ganze frameset neu geladen werden muss.

Namenloser 24. Okt 2007 19:06

Re: PHP: Mit <? include ("seite.html") ;?> F
 
Ich bin mir ziemlich sciher, dass das ohne Javascript nicht mäglich ist. Wie wäre es mit einer framelosen Seite?

mkinzler 24. Okt 2007 19:07

Re: PHP: Mit <? include ("seite.html") ;?> F
 
Dein Problem kannst du (ohe JS) nur Lösen, indem du die Basisseite mit dem Frameset neu lädst.

ferby 24. Okt 2007 19:09

Re: PHP: Mit <? include ("seite.html") ;?> F
 
mir is grad ne idee gekommen,

wenn ich statt zwei frames nur einen mache und im menü frame einen iframe mache und in diesen iframe dann <? include ("irgendwas.html") ;?> , dann müsste das eigentlich hinhauen....


framelose seite nur im notfall ;-)


Basisseite neu laden will ich vermeiden, aber wenns anderst nicht geht dann kommt das in überlegung

generic 25. Okt 2007 09:35

Re: PHP: Mit <? include ("seite.html") ;?> F
 
Ein PHP Script läuft immer in einen Frame ab.
Wenn du mehrere Frames ansprechen willst, geht das entweder
über "Target" in den Links die die neue Seite aufrufen sollen oder
du baust immer das ganze Frameset neu auf.

Dann muss Target aber "_parent" sein.

Aus einen PHP Script kannst du nicht nachträglich bestimmen in welches Frame es nun die Ausgabe machen soll. Wenn das Script aufgerufen wird, steht das Zielframe für den Browser schon fest.

Nuclear-Ping 25. Okt 2007 11:18

Re: PHP: Mit <? include ("seite.html") ;?> F
 
Frames ... *schauder* :pale: ... "Ohne Frames nur im Notfall"? Ich sehe das eher andersrum: "Frames nur im absoluten Notfall" :zwinker:

ferby 25. Okt 2007 17:40

Re: PHP: Mit <? include ("seite.html") ;?> F
 
hehe, jeder das seine, ich liebe frames und werde sicher nicht alzu schnell davon ablassen.


glaub ich mach es jetzt wirklich so das das gesamte frameset neu ladet,
geht irgendwie anders nicht wirklich

Pfoto 25. Okt 2007 18:28

Re: PHP: Mit <? include ("seite.html") ;?> F
 
Hallo ferby,

willst du nur nicht von den Frames ablassen, weil du glaubst,
es gehe ohne mühsamer?
Das ist wirklich nicht der Fall!


Wenn ich dich richtig verstanden habe, willst du dass, was
auf ca. 1 Millionen PHP-basierten Webseiten gemacht wird:

Also der Inhalt des angewählten Menüs (der sich in einer
separaten Datei befindet oder aus einer Datenbank geladen wird),
soll im Inhalts-Bereich der Seite dargestellt werden.

Also brauchst du doch nur die Variable

"Contentseite" in dem Inhaltsbereich mit etwas wie:

<? include ($_GET["Contentseite"]) ;?>

auslesen und fertig.


Wäre so doch sehr einfach zu lösen.
Oder ist das doch nicht Dein Ziel?

Gruß
Pfoto

ferby 16. Nov 2007 13:50

Re: PHP: Mit <? include ("seite.html") ;?> F
 
Hello,

also hab die seite jetzt fertig, basiert auf framese... viele frames..... das nächste mal probier ich es wirlich mal ohne frames, aber was solls, der anwender merkt eh keinen unterschied.

mein problem is jetzt aber, das der zurückbutton der browser nicht funktioniert, und ic hversteh nicht ganz warum.

ich übergebe der index.html in der url die seiten namen und baue jedesmal das frameset neu auf,
wenn ich im browser auf zurück klicke steht kurz die alte url drin aber dann wird die neue url nochmal geladen, ich versteh das verhalten nicht.

der erste entwurf der seite ist hier online:

http://***www.primea****ssets.e**u/

(ohne *)


kann mir wer erklären warum sich die Browser (ff&ie) so verhalten?

Pfoto 16. Nov 2007 14:18

Re: PHP: Mit <? include ("seite.html") ;?> F
 
Hallo ferby,

mir ist aufgefallen, dass nach einem Klick auf eine
neue URL der Browser 2 URLs in seiner History speichert.

Wenn du nämlich per Back-Button des Browsers auf den
vorletzten Eintrags klickst, funktioniert es!

Vielleicht ist diese Funktion daran schuld:

Zitat:

<script type="text/javascript">
<!--
if(top!=self)
top.location=self.location;
//-->
</script>
So dass eben nach einem Klick sofort ein weiterer
Seitenaufruf und damit ein weiterer Eintrag in
der History-Liste erzeugt wird.



Gruß
Pfoto

ferby 16. Nov 2007 14:25

Re: PHP: Mit <? include ("seite.html") ;?> F
 
stimmt, das wird es sein, nur irgendwie muss ich ja das alte frameset sprengen....

gibts da eine andere möglichkeit??

generic 16. Nov 2007 14:34

Re: PHP: Mit <? include ("seite.html") ;?> F
 
Die Webseite ist ganz hüpsch, aber auch total invalide.

Die Seite "Service" enthält laut meinen Validator 143 Fehler.
Du solltest auch unbedingt von den Frames Abstand nehmen. Dieses ist Suchmaschinen unfreundlich!

Du setzt PHP ein, da kannst du dir deine Seite Bausteinmässig zusammenklickern.
Evtl. solltest du eine Templateengine nutzen, wegen der Mehrsprachigkeit.

http://validator.w3.org


schau dir mal:
http://www.daddel-mania.de

technisch: Modularer Aufbau, SSI wird genutzt (würde aber auch mit PHP gehen), das Menu und der Header sind nur einmal auf dem Server. Somit gibt es auch nur eine Datei welche geändert werden muss.

http://www.daddel-mania.de/menuheader.html
Wird auf jeder Contentseite eingebunden.

[edit]
btw. ohne genauere analyse, meine ich das deine scripte unsicher sind.
du prüfst die parameter nicht. über pathtraversal kann ich zumindest fehler erzeugen.

ferby 19. Nov 2007 16:24

Re: PHP: Mit <? include ("seite.html") ;?> F
 
Hallo,

danke für deine Antwort.


Zitat:

Die Webseite ist ganz hüpsch, aber auch total invalide.

Die Seite "Service" enthält laut meinen Validator 143 Fehler.
phu, stimmt da hab ich einiges verbockt^^
muss ich mir mal genau anschauen.

Zitat:

Du solltest auch unbedingt von den Frames Abstand nehmen. Dieses ist Suchmaschinen unfreundlich!
Bei meinem nächsten Projekt werde ich das mal machen, aber jetzt alles umzuschreiben ist mir zu viel arbeit,
da das Grunddesgin schon kompliziert zum umsetzen war. Und sollange es auf jeden Browser korrekt angezeigt wird,
belasse ich es mal so.


Zitat:

du prüfst die parameter nicht. über pathtraversal kann ich zumindest fehler erzeugen.
was hat jemand davon die parameter zu ändern?
Wenn jemand in der Url herumpfuscht dann is er doch selbst schuld...
Das ist aber bei jeder Internetseite so, änder ich etwas in der Url stimmmt sie nicht mehr.

Einen 404 Fehler-Seite werde ich noch anlegen.

Progman 19. Nov 2007 17:02

Re: PHP: Mit <? include ("seite.html") ;?> F
 
ich hab das früher mal so gelöst:
Ein Frameset, dass nur TopFrame und MainFrame enthält. Topframe enthält das Menu und bleibt immer gleich.
In den Links des Menus hab ich dann eine php-datei geladen, die wiederum 2 Frames enthielt (rechts und links). Für jeden Menupunkt gab es so eine. Die Menu-Links lauteten dann schlicht href="mainX.php" target="mainFrame". So konnte man sogar im mainFrame noch ein Submenu unterbringen, wenn man wollte. Aber das ist lange her ;)
Ich mache schon lange keine Frameseiten mehr.

ferby 19. Nov 2007 17:07

Re: PHP: Mit <? include ("seite.html") ;?> F
 
hello,

leider is mien Frameset zu komplex... glaub hab um die 10-15 frames^^
wie gesagt, das nächste mal probier ichs ohne

generic 19. Nov 2007 18:10

Re: PHP: Mit <? include ("seite.html") ;?> F
 
Zitat:

Zitat von ferby
Zitat:

du prüfst die parameter nicht. über pathtraversal kann ich zumindest fehler erzeugen.
was hat jemand davon die parameter zu ändern?
Wenn jemand in der Url herumpfuscht dann is er doch selbst schuld...
Das ist aber bei jeder Internetseite so, änder ich etwas in der Url stimmmt sie nicht mehr.

Einen 404 Fehler-Seite werde ich noch anlegen.

ich müsste den code sehen, dann kann ich dir eher sagen ob da was geht

MCXSC 19. Nov 2007 20:12

Re: PHP: Mit <? include ("seite.html") ;?> F
 
Zitat:

Zitat von ferby
Zitat:

du prüfst die parameter nicht. über pathtraversal kann ich zumindest fehler erzeugen.
was hat jemand davon die parameter zu ändern?
Wenn jemand in der Url herumpfuscht dann is er doch selbst schuld...
Das ist aber bei jeder Internetseite so, änder ich etwas in der Url stimmmt sie nicht mehr.

Ja, sie stimmt nur nicht mehr. Aber:

Ich schreibe eine PHP-Datei, deren Aufgabe z.B. eine großangelegte Spam-Versendung ist. Diese hänge ich nun an deinen Content an, und sie wird ausgeführt. Nur ein Beispiel von vielen, wie man das mißbrauchen kann (es geht theoretisch [und praktisch] auch eine mySQL-Injection). Und genau deswegen sollte geprüft werden, ob die Variable "braucbar" ist.

^^Ich hatte das Problem mit dem Spam bei meiner Seite auch mal (wurde dann von meinem Provider informiert), bis ich die Includede-Variable "abgesichert" habe.

generic 20. Nov 2007 09:20

Re: PHP: Mit <? include ("seite.html") ;?> F
 
Wenn der Code/Seite mit include eingebunden wird und FURL-Wrapper im PHP angeschaltet sind, kann man (der Angreifer) sich eine Shell installieren.

ferby 20. Nov 2007 09:38

Re: PHP: Mit <? include ("seite.html") ;?> F
 
Hello,

das passiert bei mir aber nicht^^

anrichten kann man bei mir nichts wenn man die Parameter ändert, das einizge was jemand erreichen kann ist ein 404 Error,
darauf habe ich schon geachtet...


Alle Zeitangaben in WEZ +1. Es ist jetzt 08:00 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz