JSON Wert in PHP Formular einbinden.

Ich möchte gerne wissen, wie ich einen JSON Wert in einem PHP-Formular übertragen kann, dass mir dieser geschickt wird.

{ "enddate": "2014-10-15T00:00:00", "form": { "fields": [ { "default": "Hans", "length": "40", "name": "Vorname:", "type": "text" }, { "default": "Muster", "length": "40", "name": "Nachname:", "type": "text" }, { "default": "Movento Schweiz", "length": "40", "name": "Unternehmen:", "type": "text" }, { "default": "hans.muster@firma.com", "length": "40", "name": "E-Mail:", "type": "text" } ], "recipient": "stephane.diez@movento.ch", "subject": "CeBIT", "submit": "Anmelden" }, "infoText": "Wir besuchen Sie auf der weltgrößten IT-Messe und zeigen Ihnen, wie Sie effizient Messen vorbereiten, durchführen und nachbereiten können.", "name": "CeBIT", "location": "Hannover", "logo": "images/Events/Cebit_Logo.jpg", "startdate": "2014-03-10", "enddate": "2014-03-14" },

Ich möchte den „subject“ in meiner PHP drin haben.

[PHP]<?php
// An welche Adresse sollen die Mails gesendet werden?
$zieladresse = ‚stephane.diez@movento.ch‘;

// Welche Adresse soll als Absender angegeben werden?
// (Manche Hoster lassen diese Angabe vor dem Versenden der Mail ueberschreiben)
//$absenderadresse = ‚stephane.diez@movento.ch‘;

// Welcher Absendername soll verwendet werden?
$absendername = ‚movento-Events‘;

// Welchen Betreff sollen die Mails erhalten?
//$betreff = ‚Anmeldung‘;
$betreff = $text->subject;
//$betreff[„subject“] = subject;
// Zu welcher Seite soll als „Danke-Seite“ weitergeleitet werden?
// Wichtig: Sie muessen hier eine gueltige HTTP-Adresse angeben!
$urlDankeSeite = ‚http://www.movento.com/Events.html‘;

// Welche(s) Zeichen soll(en) zwischen dem Feldnamen und dem angegebenen Wert stehen?
$trenner = „:\t“; // Doppelpunkt + Tabulator

/**

  • Ende Konfiguration
    */

if ($_SERVER[‚REQUEST_METHOD‘] === „POST“) {

$header = array();
$header[] = "From: ".mb_encode_mimeheader($absendername, "utf-8", "Q")." <".$absenderadresse.">";
$header[] = "MIME-Version: 1.0";
$header[] = "Content-type: text/plain; charset=utf-8";
$header[] = "Content-transfer-encoding: 8bit";

$mailtext = "";

foreach ($_POST as $name => $wert) {
    if (is_array($wert)) {
        foreach ($wert as $einzelwert) {
            $mailtext .= $name.$trenner.$einzelwert."\n";
        }
    } else {
        $mailtext .= $name.$trenner.$wert."\n";
    }
}

mail(
    $zieladresse,
    mb_encode_mimeheader($betreff, "utf-8", "Q"),
    $mailtext,
    implode("\n", $header)
) or die("Die Mail konnte nicht versendet werden.");
header("Location: $urlDankeSeite");
exit;

}

header(„Content-type: text/html; charset=utf-8“);

?>[/PHP]

den inhalt von subject will ich auch mitsenden zu den anderen default pro textfield.
Wie mache ich das ?

hab die Lösung selber herausgefunden, trotzdem Danke :slight_smile:

Bitte teile deine Lösung den anderen Neugierigen mit, die diesen Post irgendwann mal über eine Suchmaschiene finden könnten. :slight_smile:

Ich baue in einer .js Datei das Formular zusammen, weil ich dieses Formular mehrmals auf der Seite brauche. Da drin muss ich die json variable übergeben, dass habe ich so gemacht:

[CODE]movento.createForm = function(formData, subject){
//…
formHtml += ‚‘;
//…

}
[/CODE]

Danach teste ich in der php Datei was in der json-subject variable drin ist:

[PHP] foreach ($_POST as $name => $wert) {
//…

        if (strcmp($name, "subject") == 0){
                $betreff = $wert;
            }

//…
}[/PHP]