ragukro
Goto Top

Mit POST Daten übergeben und die Website öffnen

Hallo,

eine kleine Frage:

Wenn ich Daten mit POST an eine Ergebnis.php übergebe (Input <type="submit"> ...) möchte ich, dass die Ergebnis.php auch im Browser angezeigt wird.

Bei mir wird die Ergebnis.php auf dem Server korrekt ausgeführt, aber nicht in dem Browser angezeigt, aus dem der Formularversand initiiert wurde.

Vermutlich könnte ich die Formulardaten per Egebnis.php aus dem Server speichern und dann per Ergebnis-2.php anzeigen - dazu müsste ich der Formularabsendenden Site die Ergebnis2.php aufrufen lassen.

Geht das auch irgendwie direkter / eleganter?

Vielen Dank

Content-Key: 435053

Url: https://administrator.de/contentid/435053

Printed on: April 27, 2024 at 17:04 o'clock

Member: falscher-sperrstatus
falscher-sperrstatus Mar 31, 2019 updated at 10:54:42 (UTC)
Goto Top
hallo,

du gibst einfach die Daten per

 echo $_POST['info'];  

in der aufgerufenen Datei aus, natürlich gehört das noch escaped, aber das ist PHP Basis-basis Wissen....
Member: RaGuKro
RaGuKro Mar 31, 2019 at 11:11:36 (UTC)
Goto Top
aber die Ergebnis.php wird doch nicht vom Formularversender geöffnet, sie wird nur auf dem Server ausgeführt.

"weder 'escaped' noch sonst wie"
Member: StefanKittel
Solution StefanKittel Mar 31, 2019 at 11:14:47 (UTC)
Goto Top
Moin,

irgendwas machst Du falsch.
Mit Submit öffnet der Browser die action.php und stellt diese im Browser dar.

Siehe auch
https://www.php.net/manual/de/tutorial.forms.php

Stefan
Member: falscher-sperrstatus
Solution falscher-sperrstatus Mar 31, 2019 at 11:15:19 (UTC)
Goto Top
https://www.php-einfach.de/php-tutorial/_get-und-_post/

natürlich wird jede PHP auf dem Server 'geöffnet', verarbeitet und an den Browser des Users geschickt.
Member: RaGuKro
RaGuKro Mar 31, 2019 at 11:28:12 (UTC)
Goto Top
vielen Dank.

Dann werde ich den Fehler schon finden...
Member: RaGuKro
RaGuKro Mar 31, 2019 at 15:07:45 (UTC)
Goto Top
Kann es sein, dass bei AMP Seiten das irgendwie anders ist?

Wenn ich eine normale Seite mit
<body>
   <form method="post" action="https://oooo.de/resultator.php"  target="_top" >   
     <input name="Test" type="hidden"   value="Das ist ein Test"   />  
     <input type="submit" value="Senden" />  
   </form>
</body>

aufrufe, dann wird in der Tat die resultator.php im Browser geöffnet.

Wenn ich aber eine AMP Seite:


<!doctype html>
<html ⚡>
  <head>  
    <meta charset="utf-8">  
    <title>Sample document</title>
    <link rel="canonical" href="oooo.html">  
    <meta name="viewport" content="width=device-width,minimum-scale=1,initial-scale=1">  
    <script async custom-element="amp-carousel" src="https://cdn.ampproject.org/v0/amp-carousel-0.1.js"></script>  
   	<script async custom-element="amp-form"		src="https://cdn.ampproject.org/v0/amp-form-0.1.js"></script>  
    <style amp-boilerplate>body{-webkit-animation:-amp-start 8s steps(1,end) 0s 1 normal both;-moz-animation:-amp-start 8s steps(1,end) 0s 1 normal both;-ms-animation:-amp-start 8s steps(1,end) 0s 1 normal both;animation:-amp-start 8s steps(1,end) 0s 1 normal both}@-webkit-keyframes -amp-start{from{visibility:hidden}to{visibility:visible}}@-moz-keyframes -amp-start{from{visibility:hidden}to{visibility:visible}}@-ms-keyframes -amp-start{from{visibility:hidden}to{visibility:visible}}@-o-keyframes -amp-start{from{visibility:hidden}to{visibility:visible}}@keyframes -amp-start{from{visibility:hidden}to{visibility:visible}}</style><noscript><style amp-boilerplate>body{-webkit-animation:none;-moz-animation:none;-ms-animation:none;animation:none}</style></noscript>
    <script async src="https://cdn.ampproject.org/v0.js"></script>  
  </head>
  <body>
    <form method="post" action-xhr="https://xxxx.de/resultator.php"  target="_top" >   
     <input name="Test" type="hidden"   value="Das ist ein Test"   />  
     <input type="submit" value="Senden" />  
   </form>
  </body>
</html>

aufrufe, dann wird die resultator.php nicht geöffnet, aber auf dem Server ausgeführt.

Warum bloß ?
Member: falscher-sperrstatus
falscher-sperrstatus Mar 31, 2019 at 15:37:30 (UTC)
Goto Top
Hallo,

warum nutzt du auch AMP, wenn du nicht mal die Grundlagen von HTML und PHP drauf hast?

Darin liegt auch dein Kernproblem. und bei Form' gibt es kein target.

VG
Member: RaGuKro
RaGuKro Mar 31, 2019 at 15:55:32 (UTC)
Goto Top
Zitat von @falscher-sperrstatus:
[…] und bei Form' gibt es kein target.

Sicher?

Form bei HTML: Form Syntax

und bei AMP-HTML: AMP Form Syntax

??
Member: falscher-sperrstatus
falscher-sperrstatus Mar 31, 2019 at 16:00:39 (UTC)
Goto Top
OK, etwas gelernt, gibt es schon, bringt aber nichts, sonst deute mir mal dessen Einsatz bei dir? face-smile

Aber egal wie gedeutet, für AMP fehlen dir die Grundlagen in HTML und PHP, eigne dir das an, dann kannst du in AMP Troubleshooten.
Member: RaGuKro
RaGuKro Mar 31, 2019 updated at 17:09:10 (UTC)
Goto Top
Zitat von @falscher-sperrstatus:
[…] sonst deute mir mal dessen Einsatz bei dir? face-smile

target bestimmt doch eigentlich, ob die Antwort in einem neuen Browser Tab (blank) oder im selben öffnet. oder? Deshalb hätte ich genau an dieser Stelle mein Problem erwartet.

Aber egal wie gedeutet, für AMP fehlen dir die Grundlagen in HTML und PHP, eigne dir das an, dann kannst du in AMP Troubleshooten.

Ich danke Dir für Deine Antworten (wirklich), aber den finalen Überblick hast du da vermutlich auch nicht.
Member: falscher-sperrstatus
falscher-sperrstatus Mar 31, 2019 at 17:21:19 (UTC)
Goto Top
The target attribute is supported in HTML5.

The target attribute was deprecated in HTML 4.01.

Note: Frames and framesets are not supported in HTML5, so the _parent, _top and framename values are now mostly used with iframes.

Nutze ich tatsächlich nicht, denn was bringt es mir eine Form in einen Iframe zu senden?
1. sind iframes seit gut 10 Jahren nur noch Geduldet.
2. Ich hab einen Fall, in dem ich aus einer alten Website ein Modul temporär von der neuen Seite implementieren musste, da das alte Modul zu große Sicherheitslücken hatte. Hier öffne ich aber den Iframe und der iframe-pfad ist auch der submit pfad - target ist unnötig
3. Sicher nutz ich kein AMP, da ich nach ausführlicher Einarbeitung keinen Vorteil darin sehe, außer einer weiteren Sprachobfuskation, die mir aber keinen Vorteil und gefühlt eher mehr Aufwand bringt. Nichts, was mir einen USP verspricht. Warum gehst du auf AMP?

Ich sag auch nicht, dass ich den finalen Überblick habe (oder wollte, sonst bräuchte ich einen neuen Job), aber wenn ich bei jedem Kinkerlitz, der auf den ersten Blick nicht geht hier im Forum fragen würde, dann wäre ich heute noch auf dem Stand von 2000. Also verzeih mir, aber bitte eigne dir die Basics an, oder steh dazu, dass das Projekt (oder die IT) einfach nichts für dich ist.
Member: RaGuKro
RaGuKro Mar 31, 2019 at 17:49:28 (UTC)
Goto Top
Zitat von @falscher-sperrstatus:
Warum gehst du auf AMP?

Eine Technik, die auf kurze Ladezeiten fokussiert. Lange Ladezeiten killen Userzugriffe, Google rankt AMP höher.

[…] oder steh dazu, dass das Projekt (oder die IT) einfach nichts für dich ist.

ähm -- -- Nein.

Ich will da wirklich nicht undankbar sein. Du nimmst Dir die Zeit am Sonntag mir mehrfach zu antworten und dafür danke ich!


Prinzipiell denke ich, dass es schon eine geeignete Frage für ein kompetentes Forum ist, weil sich die Lösung nicht aus der Dokumentation ergibt und weil es ein verwirrender Umstand ist, dass form unter amp-html anders als html reagiert.
Member: falscher-sperrstatus
falscher-sperrstatus Mar 31, 2019 at 18:22:32 (UTC)
Goto Top
Eine Technik, die auf kurze Ladezeiten fokussiert. Lange Ladezeiten killen Userzugriffe, Google rankt AMP höher.

Aber auch nur, wenn man weiss, was man tut und nebenbei, sowohl dieses als auch letztes mal war selbst die AMP Seite von der Ladezeit schlechter als so ziemlich alle Seiten, die ich sonst nutze.

Wie gesagt, lern dich erstmal in die Basics ein, dann kannst du dich an AMP ran wagen, wenn du dann noch glaubst, dass du das brauchst. AMP alleine (*wenn überhaupt) hilft auf einem Shared Hosting nämlich mal gar nichts.
Member: StefanKittel
StefanKittel Mar 31, 2019 at 18:48:52 (UTC)
Goto Top
Zitat von @RaGuKro:
aufrufe, dann wird die resultator.php nicht geöffnet, aber auf dem Server ausgeführt.
Warum bloß ?
Weil AMP anders funktioniert.

Egal ob nun AMP oder andere Technien, alle benötigen HTTP(s), HTML und Javascript.
Was anderes können die Browser einfach nicht.

AMP nutzt nun Javascript um Daten und Abfragen an den Webserver zu schicken und interpretiert die Antworten um dann wieder per Javascript diese in den aktuellen HTML-Code einzubauen. Es wird also nicht die ganze Seite neu geladen sondern nur Teile des Inhaltes.

Im Prinzip lädt man nur einmal eine Javascript-Anwendung ohne Daten und Inhalte runter und dann holt sich das Programm die Inhalte, stellt diese dar und reagiert auf Benutzereingaben.

Für Beginner ist der Einstieg schwierig da der Code so verteilt und aufbauen aufgerufen wird.

Viele Grüße

Stefan