Eigenes Formular auf Page Template

  • Hallo an Alle,

    ich möchte ein eigenes Formular auf einem Page Template erstellen, welches die Daten an die selbe Page sendet.

    Das Formular soll etwa so aussehen:

    HTML
    <form method="post" action=" ??? ">
     <input name="wert" type="text" />
     ...
    </form>

    Da mehrere Pages auf dem selben Template basieren kann ich keine feste URL verwenden. Wie ist die URL der jeweiligen Seite aufgebaut?
    Und wie kann ich dann die übergebenen Werte abfragen?

    Code
    $wert= ???

    Viele Gruesse,
    ruin

    • Anzeige

    Hallo!

    Wenn du gerade an deiner Website arbeitest oder dein aktuelles Hosting überdenkst: Wir betreiben mit NetzLiving eine Hosting-Plattform, die speziell auf Performance, Sicherheit und einfache Verwaltung ausgelegt ist.

    • ✔️ Schnelle Ladezeiten (optimiert für WordPress & Co.)
    • ✔️ Deutsche Server & DSGVO-konform
    • ✔️ Persönlicher Support (kein 0815-Ticket-System)

    Mehr erfahren

  • Lass action leer, dann wird automatisch die URL der aktuellen Seite eingesetzt. Oder meinst du was andres?

    Das geht? Ist aber bestimmt nicht standardkonform :-)

    Ansonsten kann man das auch so machen:

    HTML
    <form method="post" action="<?php echo $_SERVER['REQUEST_URI']; ?>"><input name="wert" type="text">
     ...
    </form>

    Gruß
    Ingo

    Wenn ich helfen konnte, bitte [ Gefällt mir ] klicken. :-)

  • Das geht? Ist aber bestimmt nicht standardkonform :-)

    Jetzt bringst du mich echt ins Wanken. Bin bisher davon ausgegangen, dass das standardkonform ist, da automatisch der Wert der aktuellen Seite angenommen wird. Das W3C meint aber:

    Zitat von http://www.w3.org/TR/html401/interact/forms.html#adef-action


    action = uri
    This attribute specifies a form processing agent. User agent behavior for a value other than an HTTP URI is undefined.

    Es hat sich bisher aber noch kein Validator über ein leeres action-Attribut beschwert. ;-)

    Ich vermute, ein leerer String ist einfach mal ein gültiger URI - nämlich der der aktuellen Seite.

  • Hab da auch noch eine Frage zu diesem Thema.

    Ich habe auch ein eigens Formular in mein Page-Template eingebaut, das normalerweise wunderbar funktioniert. Die action habe ich auch leer gelassen:

    PHP
    action=""

    Wenn ich das Formular absenden will, kommt danach immer eine 404-Meldung. Kann mir da jemand weiterhelfen?

    mein gesamter Code sieht so aus:

    diese Formular wird per jquery validiert:

    und dann per PHP versendet:

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!