Mit folgendem Script erstelle ich über die getdata.php einen DB Request und alsse ihn ausgeben
Dazu muss ich sagen, dass es um ein Newsscript geht, wobei der Ajax-Anteil die Kommentare ausgibt.
Der Parameter "nid" steht für die News-Id. Das Problem ist nur folgendes:
Das Newsscript wird in die index.php includet, und dort wird auch die Variable "nid" festgelegt, allerdings befindet sich der Javascript der index.php schon im Head-Teil, obwohl die Funktion (loadData) erst im body-Teil ausgeführt wird.
Von daher kennt das Javascript die Variable nid noch nicht.
Klar, man kann die Variable nid selbstverständlich auch vor dem Head-Teil in der index.php festlegen, aber das will ich nicht, ich will dass sie erst in der includeten Datei festgelegt wird.
Also, wie kann ich die Funktion loadData ausführen, sodass nur Kommentare mit der entsprechenden Newsid ausgegeben werden?
Mit folgendem Script erstelle ich über die getdata.php einen DB Request und alsse ihn ausgeben
Dazu muss ich sagen, dass es um ein Newsscript geht, wobei der Ajax-Anteil die Kommentare ausgibt.
Der Parameter "nid" steht für die News-Id. Das Problem ist nur folgendes:
Das Newsscript wird in die index.php includet, und dort wird auch die Variable "nid" festgelegt, allerdings befindet sich der Javascript der index.php schon im Head-Teil, obwohl die Funktion (loadData) erst im body-Teil ausgeführt wird.
Von daher kennt das Javascript die Variable nid noch nicht.
Klar, man kann die Variable nid selbstverständlich auch vor dem Head-Teil in der index.php festlegen, aber das will ich nicht, ich will dass sie erst in der includeten Datei festgelegt wird.
Also, wie kann ich die Funktion loadData ausführen, sodass nur Kommentare mit der entsprechenden Newsid ausgegeben werden?
...
Irgendwie verstehe ich dein Problem nicht so recht. Du hast eine Funktion in einer Datei die includet wird. Diese Funktion willst du später mit einem Parameter aufrufen. Spätestens dort, wo du den Funktionsausruf mit PHP ausgeben lässt, müsste dir doch aber die News-ID bekannt sein, oder? Also im Stil von
Oder verstehe ich das falsch?
Also, der Javascript, welcher die Funktion erhält befindet sich im Head-Teil der index.php
Danach (und das ist warscheinlich das Problem meines Scripts) wird die Funktion loadData() im Body-Teil der index.php aufgerufen.
Das ist insofern problematisch, weil die Funktion auf diese Weise quasi immer aufgerufen wird, da sie in der index definiert ist, auch wenn das entsprechende News-Script nicht includet wird.
Demnach habe ich den Body folgendermaßen definiert.
Wobei der content=news_single hier für das newsscript steht.
Am liebsten wäre es mir aber, wenn sich loadData() in der includeten Datei ausführen lässt, allerdings ohne klicken.
Das Problem ist, dass mir hierbei nur noch <body onload=""> bleibt, aber in eine Datei, welche man includet gehört nunmal kein <body>
Also, der Javascript, welcher die Funktion erhält befindet sich im Head-Teil der index.php
Danach (und das ist warscheinlich das Problem meines Scripts) wird die Funktion loadData() im Body-Teil der index.php aufgerufen.
Das ist insofern problematisch, weil die Funktion auf diese Weise quasi immer aufgerufen wird, da sie in der index definiert ist, auch wenn das entsprechende News-Script nicht includet wird.
Demnach habe ich den Body folgendermaßen definiert.
Wobei der content=news_single hier für das newsscript steht.
Am liebsten wäre es mir aber, wenn sich loadData() in der includeten Datei ausführen lässt, allerdings ohne klicken.
Das Problem ist, dass mir hierbei nur noch <body onload=""> bleibt, aber in eine Datei, welche man includet gehört nunmal kein <body>
...
Kannst du überall unterbringen und dürfte auch valid sein.
Wenn du die Daten aber eh ohne Userinteraktion anzeigen willst, frage ich mich, warum du sie nicht gleich mit ausgibst o_O
Kannst du überall unterbringen und dürfte auch valid sein.
Wenn du die Daten aber eh ohne Userinteraktion anzeigen willst, frage ich mich, warum du sie nicht gleich mit ausgibst o_O
...
Joa..hätte ich auch drauf kommen können
Trotzdem danke !
Naja, ich lasse sie doch ausgeben, nur eben per Ajax. Sie aktualisieren sich eben nur nicht im Shoutboxstil, sondern nur dann, wenn jemand einen Kommentar schreibt, was mich auch gleich zur zweiten Frage führt, denn genau das möchte ich auch irgendwie erreichen..
Bei meinem Eingabeformular benutze ich folgenden Code im Form Tag
Schreibe ich jetzt hinter savaData(); noch loadData(); so trägt er den Kommentar zwar ein, aber ich lande wieder auf der index ohne $content.
Wie kann ich also am besten die Kommentare aktualisieren, wenn jemand einen Eintrag verfasst?
Man sollte niemals eine Benutzereingabe direkt ausgeben bzw. anders weiterverwenden.
Man sollte die Eingabe immer erst prüfen bzw. dafür sorgen, das keine gefährlichen Daten drin vorkommen.
In diesem Fall kämme wohl intval in Frage.
Man sollte niemals eine Benutzereingabe direkt ausgeben bzw. anders weiterverwenden.
Man sollte die Eingabe immer erst prüfen bzw. dafür sorgen, das keine gefährlichen Daten drin vorkommen.
In diesem Fall kämme wohl intval in Frage.
...
Javascript und HTML kann ja sowieso vom Benutzer geändert werden, also was kann denn in diesem Falle passieren?
Javascript und HTML kann ja sowieso vom Benutzer geändert werden, also was kann denn in diesem Falle passieren?
...
Der Inhalt der Seite kann über die URL beinflußt werden, in diesem Falle könnte beliebiges HTML eingeschleust werden. Damit lässt sich beliebiger Inhalt in die Seite einfügen und damit kann man den User wunderbar täuschen, indem man falsche Informationen einbindet. Oder man stiehlt dem User einfach seine Cookies und damit möglicherweise seine Login-Informationen. Im Zweifelsfalle wartet man, bis der User sein Passwort eingibt und schickt es dann an den Angreifer. XSS sollte man nicht unterschätzen.
Ist mir durchaus bewusst, aber ich sehe mich einfach nicht in der Pflicht, produktionsreifen Code zu liefern.
Ich denke, sowas sollte man jemandem nicht vorkauen, sondern wenn überhaupt gleich mit erklären.
Hallo,ich bin ein absoluter PHP-Anfänger,und möchte ein Formular erstellen,dass die Ergebnisse auf eine andere Seite überträgt und anzeigt.
Das funktioniert aber nicht,sooft ich das auch umändere.
Das Formular in HTML:
Das PHP-Script,wo es ausgelesen wird:
Ich habe irgendwie das Gefühl,dass was fehlt...
Ist es überhaupt möglich,die Daten in einem reinen HTML-Dokument (ohne irgendwelche PHP-Zeilen) zu erhalten?
Das seltsamste ist eigentlich,dass der größte Teil eigentlich aus einer anderen Seite rüberkopiert wurde und trotzdem im dem Zieldokument nix steht!(Ich benutze Firefox 2.0.0.14)
Natürlich ist
in der dataget.php.Aber wenn ich ja mir die dataget.php ansehe,steht da nichts!
Zur Verarbeitung:Ich habe die Form action auf ="Abc.html" umbenannt,die Seite,wo die die Formulardaten eingebe,damit sie sich selbst wieder aufruft.Und unter dem Formular-Code habe ich die eingegeben,damit er sie ausgibt.Aber das funktioniert auch nicht.Oder wie soll man das machen?
Also so: