Daten in opener-Seite aus Formular-Seite reloaden
Joerg
- php
Hallo Vollblut-Programmierer,
bin bei meiner Programmierkunst an einem Punkt angelangt, wo ich Hilfe von Spezialisten benötige.
Ich habe mein Projekt in PHP unter Verwendung einer MySQL-Datenbank geschrieben. Zur Bearbeitung der Datenbank wird eine PHP-Seite aufgerufen, in der alle Datensätze im Kleinformat als Tabelle angezeigt werden. Dort läßt sich nun ein Datensatz auswählen, um die Daten zu bearbeiten. Die Bearbeitung findet in einem Formular in einer weiteren PHP-Datei statt, welche in einem separaten Fenster angezeigt wird. Die Daten werden von Seite 1 per methode post übergeben. Nach Bearbeitung des Datensatzes wird dieser in der Datenbank abgespeichert und das Bearbeitungsfenster per JAVA-Script-Befehl geschlossen. Leider werden jetzt im Ausgangsfenster in der Tabelle die veränderten Daten nicht dargestellt, weil dazu die Daten neu geladen werden müssen. Beim Versuch, die Daten per JAVA-Script-Befehl opener.location.reload() aus dem Bearbeitungsfenster zu aktuallisieren, meckert der Browser ( The page cannot be refreshed without resending the information [englische Window-Version]). Bei Betätigung des Retry-Buttons dieser Meldung wird die Seite dann aber aktuallisiert. Gibt es nun eine Methode, diese Fehlermeldung zu verhindern, zum Beispiel durch senden der erforderlichen Daten aus Bearbeitungsseite an Seite 1 oder andere Möglichkeiten?
Die Übermittlung der Daten von Seite 1 an die Bearbeitungsseite per methode get erscheint mir nicht sicher genug.
Ich hoffe nun, das jemand eine Antwort zu diesem Problem hat.
Vielen Dank und viele Grüße aus einem fernen Land!
Jörg
Moin!
Nun, Du hast eine Seite, die wurde nach Übergabe von Daten via POST erstellt. Diese willst Du refreshen. Ok. Schreib die übergebenen Daten bei Erstellung der Daten in eine cookie-basierte Session, und übergib document.opener.location.href die blanke Adresse der Seite.
Du musst anfangs einfach bei Existenz der POST-Daten (if isset($_POST['sonstwas']) {} ) die Session-Daten ignorieren...
MFFG (Mit freundlich- friedfertigem Grinsen)
fastix®
Moin!
Nun, Du hast eine Seite, die wurde nach Übergabe von Daten via POST erstellt. Diese willst Du refreshen. Ok. Schreib die übergebenen Daten bei Erstellung der Daten in eine cookie-basierte Session, und übergib document.opener.location.href die blanke Adresse der Seite.
Du musst anfangs einfach bei Existenz der POST-Daten (if isset($_POST['sonstwas']) {} ) die Session-Daten ignorieren...
MFFG (Mit freundlich- friedfertigem Grinsen)
fastix®
Hallo fastix
Bin mir noch nicht sicher, ob das die Lösung des Problems ist.
Ich will die Seite refreshen, die die Daten gesendet hat( die opener-Seite). Sollen jetzt diese gesendeten Daten ins cookie? Das sind ja die Daten vor der Änderung in Seite 2.
Ich hoffe, morgen auch freundlich-friedfertig grinsen zu können. Heute ist es zu spät ( 2.40 Ortszeit )
Gute Nacht
Jörg»»
Moin!
Hallo fastix
Bin mir noch nicht sicher, ob das die Lösung des Problems ist.
Ich will die Seite refreshen, die die Daten gesendet hat( die opener-Seite). Sollen jetzt diese gesendeten Daten ins cookie? Das sind ja die Daten vor der Änderung in Seite 2.
Ja. Das sind dieselben Daten, die sonst auch per POST übertragen werden würden. refresh() bedeutet genau das...
Ich hoffe, morgen auch freundlich-friedfertig grinsen zu können. Heute ist es zu spät ( 2.40 Ortszeit )
Dann musst Du ja schon heute feixen. 4h östlich? Ural, vorderer Orient, Ostafrika oder irgendwo an einem der beiden Pole?
MFFG (Mit freundlich- friedfertigem Grinsen)
fastix®
hi,
Ich will die Seite refreshen, die die Daten gesendet hat( die opener-Seite).
Wenn eben diese Seite mittels POST aufgerufen wurde, dann erscheint beim Versuch eben diese Seite neu laden zu lassen auch die genannte Meldung.
Ist diese Seite mittels POST aufgerufen worden? (Müsste eigentlich, andernfalls sollte das "Problem" nicht bestehen)
Kannst du diese Seite stattdessen mittels GET aufrufen lassen?
gruß,
wahsaga