2016-05-17 13 views
0

So habe ich versucht für eine Weile hier mit Radio-Tasten mit PHP umgehen und kann nicht scheinen, um es richtig zu arbeiten. Ich bin sicher, es ist nur ein Fehler in meinem Code, dass ich nicht sehen kann, vielleicht können Sie mir eine Hand geben. Ich werde nicht meinen ganzen Code veröffentlichen, weil einige Informationen haben, die ich nicht herausgeben will, also werde ich genug posten, damit das Problem gelöst werden kann. Vielen Dank!Umgang html Radio-Tasten mit PHP

sollte der Code eine E-Mail als so

$m->Subject = 'Docket-Solutions Order Form'; 
$m->Body = 'From: ' . $fields['name'] . ' (' . $fields['email'] . ') ' .  $fields['category'] . ' ' . $fields['priority'] . '<p>' . $fields['message'] .  '</p>'; 

das gesagt, ich habe es bis zu E-Mail mir und es E-Mails mich alles außer dem Prioritätsfeld formatiert senden, die geprüft wird. zum Beispiel, wenn niedrige Priorität ist, dann in der E-Mail ich will es mir sagen, so und so weiter. in der E-Mail sollte es sagen "niedrige Priorität"

HTML-Code

<div class="4u 12u(narrower)"> 

<input type="radio" id="priority-low" name="priority" <?php if (isset($_POST['priority']) && $_POST['priority']=="Low Priority") echo "checked";?> checked> 

<label for="priority-low">Low Priority</label> 
</div> 

Php Code

if(isset($_POST['name'], $_POST['email'], $_POST['subject'], $_POST['message'])) { 
$fields = [ 
'name' => $_POST['name'], 
'email' => $_POST['email'], 
'subject' => $_POST['subject'], 
'message' => $_POST['message'] 
]; 

foreach($fields as $field => $data) { 
    if(empty($data)) { 
     $errors[] = 'The ' . $field . ' field is required.'; 
    } 
} 
+4

Was ist die Frage? –

+1

Sie möchten, dass wir das Problem finden und Ihnen die Lösung geben? Oh Junge. – Phiter

+0

Auch der PHP-Teil hat nichts mit Radio zu tun. – Phiter

Antwort

-1

Entfernen Sie einfach die letzten "geprüft" in Ihrem HTML-Code, um den Zustand Ihrer ändern Optionsfeld über PHP. Außerdem sollten Sie dem Radiobutton einen Wert geben, um es in der Mail zu drucken.

<input type="radio" id="priority-low" name="priority" value="Low Priority" <?php if (isset($_POST['priority']) && $_POST['priority']=="Low Priority") echo "checked";?>> 
+0

Was würde das bedeuten? Ich verstehe nicht – BestThereEverWas

+0

Momentan wird Ihr Optionsfeld jedes Mal überprüft, weil Sie das HTML-Attribut "checked" verwenden, selbst wenn Ihr POST Wert ist nicht festgelegt. – manniL

+0

Ok, ich verstehe das, aber das hat mein Problem noch nicht gelöst, wenn die E-Mail gesendet wird, wo sie "niedrig prioritär" sagen soll, heißt sie aus irgendeinem Grund "an". – BestThereEverWas