0

タグ内の配列である double 値を渡そうとしています。を受け取って反対側でアレイを分割するにはどうすればよいですか? これは私が持っているコードです:

<?php
 print("<select name='dsc[]' multiple='multiple' id='searchable-select' multiple>");
//Create new SQL object  
$db = new NSC_SQL($db2config);
$db->from($qadbifld, "dbifld, substr(dbitxt,1,25) as FLDTEXT");
$db->where("upper(dbiatr)='PF' and (DBILIB='".$nscmod72d."' or DBILIB='".$aedata72."')    ");
$db->group("dbitxt,dbifld");
$db->order("dbitxt,dbifld");
$db->select();
$results = $db->fetchAssoc();
foreach($results as $row)
{
    $fieldName = trim($row['DBIFLD']);
    $fieldDesc = trim($row['FLDTEXT']);
    print("<option VALUE='$fieldDesc,$fieldName'>$fieldDesc  -  $fieldName  </option>");
}
print("</select>");
?>

これは私が反対側でそれを受信しようとしている方法です:

<?PHP
 $dsc = $_POST['dsc'];
 list($fieldDesc, $fieldName) = explode(":", $dsc);
//Put the elements of the array in hidden fields here!
print_r($fieldDesc);
print_r($fieldName);
foreach ($fieldDesc as $key => $value1)
{
    echo "<input type=hidden name='dsc[]' value='$value1'>";
}
?>

これはPHPで書かれています

複数選択ボックスに 1 つのオプションのみが渡されるように、このようにする必要があります。皆さんが私のために持っているかもしれないどんな助けにも感謝します.

4

2 に答える 2

2

値を で結合し,、 で分割しているように見えます:。結合と分割には同じセパレーターを使用する必要があります。

于 2012-07-25T14:15:48.233 に答える
0

複数の選択要素があります

以下のコードを検討してください

<?php
if(isset($_POST) && !empty($_POST)){
    $dsc = $_POST['dsc'];

    foreach ($dsc as $val){

        $data = explode(",", $val);
        $fieldDesc = $data[0]; 
        $fieldName = $data[1];

        echo "<input type=hidden name='dsc[]' value='$fieldDesc'>";
    }
}

?>

<form action="" method="post">
<select name='dsc[]' multiple='multiple' id='searchable-select' multiple size="7">
    <option value="a,1">a,1</option>
    <option value="b,2">b,2</option>
    <option value="c,3">c,3</option>
    <option value="d,4">d,4</option>
    <option value="e,5">e,5</option>
</select>
<input type="submit" value="Submit"></input>
</form>

わからない場合は私に知らせてください

于 2012-07-25T14:46:14.523 に答える