Variable an andere Seite übergeben (nicht mit $_GET)

stonk

Erfahrenes Mitglied
Tach zusammen

Ich^habe da ein kleines Prolbem.. ich möchte bei meinem Gästebuch überprüfen, ob der absender auch wircklich über meine Seite kommt und nicht extern auf mein submit script schickt... so im sinne einer checksumme....
dafür möchte ich eine variable aus meiner ersten Seite an die zweite übergeben... $_GET kann ich nicht gebrauchen, da sonst der user diese einsehen kann...

kann mir da jemand weiterhelfen

sollte eigentlich ja nicht so schwer sein... bringe es aber leider nicht auf die reihe...:(

Besten Dank
stonk
 
Du könntest ein <input type="hidden"> verwenden, um versteckte Daten an das nächste Script zu senden. Dabei muss das ganze natürlich in einem <form> sein. Aber das hast Du ja sicher eh, weil Du das ja für einen Gästebucheintrag überprüfen willst und der muss ja schließlch irgendwie getätigt werden, ...

redlama

EDIT: Stimmt, daran hatte ich nicht gedacht, ...
 
Zuletzt bearbeitet:
danke! hab ich schon probiert wäre aber besser, wenn der wert nicht im quelltext ersichtlich wäre... sonst könnte man ihn ja anschauen und wäre genauso weit... oder etwa nicht?

danke trotzdem
stonk
 
Die Übertragung via POST über ein hidden-Field kann ebenso von einer fremden Seite aus vorgenommen werden. Wenn du sicher gehen willst, dass nur von deiner Seite aus gepostet werden kann, dann erstelle eine zufällige Transaktions-ID, die in der Session des Nutzers abgelegt wird und zudem über das Formular übertragen wird. Vor dem Eintragen des Gästebucheintrags wird geprüft, ob die Transaktions-ID, die durch das Formualar übergeben wurde, auch in der Session des Nutzers enthalten ist. Und nur dann wird die Eintragung vorgenommen. Zusätzlich kann diese Methode auch zur Verhinderung von Doppelposts durch Reload dienen.

--> http://www.tutorials.de/tutorials190725.html
--> http://www.tutorials.de/tutorials191106.html
 
Danke

Aber würde es nicht eine einfachere Methode geben, wie z.B. folgendes:
ich definiere auf der ersten Seite eine Variable z.B.: $zahl = "4569721897";
und auf der zweiten Seite lese ich sie aus und überprüfe, ob die stimmt... auf diese weise kann der user diese zahl nicht einsehen und nicht von einer anderen seite einen eintrag senden...

weiss jemand wie das gehen könnte?

bestan dank
stonk
 
Trotzdem musst du doch diese "geheime Zahl" mit dem Eingabeformular übertragen, um anschließend prüfen zu können, ob diese mit der im Script definierten "geheimen Zahl" überein stimmt. Sobald du eine statische Zahl verwendest, die dann zwangsläufig auch im Eingabeformular steht, kann man diese auslesen und ebenso übertragen. Deswegen ist die Verwendung einer zufällig generierten Zahl oder Zeichenfolge günstiger.

Ich finde übrigens nicht, dass die Session-Variante sonderlich schwer ist.

Sven
 
diese zahl müsstest du wiederum über ein $get oder ein Hidden übergeben ;)

mal was ganz ausgefallenes: beim abschicken des formulars wird eien textdatei erzeugt udn eine zahl reingeschrieben (1986). die nächste seite schaut ob diese Datei existiert und nur DANN wird der eintrag vorgenommen :)
 
Kyrius hat gesagt.:
diese zahl müsstest du wiederum über ein $get oder ein Hidden übergeben ;)
Naund? Die Zahl wird aber je Nutzer individuell generiert und zudem in der Session abgelegt. Wenn die übergebene Zahl nicht mit der in der Session überein stimmt, wird kein Eintrag angelegt.

Wozu die Zahl in einer Datei ablegen, wenn das Session-Handling von PHP die Speicherung von temporären Daten je Nutzer viel einfacher gestaltet? Du müsstest ja ohne berücksichtigen, dass mehrere Nutzer einen Eintrag vornehmen wollen und dann alle versuchen diese Datei zu erstellen und zu löschen.

Sven
 
Das bringt dich alles nicht weiter. Du musst einen Mechanismus implementieren, der nicht von einer Maschine abgearbeitet werden kann. Wie z.B. die Eingabe einer Zahl durch den User, die in einem Bild steht. Es gibt heutzutage zwar schon Software, die auch solche Aufgaben bewältigen können, die Frage ist dabei allerdings, ob sich jemand diese Mühe macht, nur um in deinem Guestbook zu posten.
 
Seine Anforderung war, dass die Nutzer über seine Seite kommen müssen, um den Eintrag vorzunehmen. und das wird durch die Session-Variante abgedeckt. Es war nie von einem Spamschutz die Rede.
 
Zurück