2016-04-11 20 views
0

Hier ist mein aktueller Code zum Speichern der mehreren Auswahlfeldwerte. Es speichert nur einen (1) Wert, nicht jeden Wert, den ich auswähle.Wie speichere ich ein Mehrfachauswahlfeld in PHP?

public function booked_save_calendars_custom_fields($term_id) { 
     if (isset($_POST['term_meta'])) { 
      $t_id = ($term_id); 
      $term_meta = get_option("taxonomy_$t_id"); 
      $cat_keys = array_keys($_POST['term_meta']); 
      foreach ($cat_keys as $key) { 
       if (isset ($_POST['term_meta'][$key])) { 
        $term_meta[$key] = $_POST['term_meta'][$key]; 
       } 
      } 
      update_option("taxonomy_$t_id", $term_meta); 
     } 
    } 

Dies ist ein benutzerdefinierte Meta-Feld für eine Taxonomie in Wordpress zu speichern.

+0

Warum schleifen Sie nicht über die Schlüssel $ term_meta, aber die Eingabe? – madalinivascu

Antwort

0

Mit Ihren begrenzten Informationen, von denen ich verstanden habe, konnte ich nur so viel antworten. Wenn es nach Ihrem Bedarf ist, dann nähern Sie sich ihm.

<form action="" method="post"> 
    <select name="fruits[]" multiple> 
     <option value='apple'>Apple</option> 
     <option value='orange'>Orange</option> 
     <option value='mango'>Mango</option> 
     <option value='grapes'>Grapes</option> 
    </select> 
    <input type="submit" value="submit"/> 
</form> 

// The name attribute for multi select field should be of array type 

<?php 
if(isset($_POST['fruits'])) 
{ 
    foreach($_POST['fruits'] as $key=>$value) 
    { 
     echo $value."<br>"; 
     // do something required 
    } 
    // or if you want to insert it in db just convert it into JSON data 
    json_encode($_POST['fruits']); 
    // proceed the insertion query 
    // Note The db field for the json data should have text data type 
} 
?> 
Verwandte Themen