亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

我無法在 php 中獲取選擇框的多個選定值

我無法在 php 中獲取選擇框的多個選定值

PHP
慕姐4208626 2023-04-15 17:02:35
因此,我有一個 HTML/PHP 表單,它有一個選擇列表框,您可以從中選擇多個值,因為它的多個屬性設置為多個??紤]表單方法是“POST”。但是當我點擊 SUBMIT 時,列表框只保存了一個值(具體來說是最后選擇的值)。我不知道為什么。這是我的代碼的一部分:    <?php    if(isset($_POST['submitSave'])) {    // Disable errors due to empty xml files        error_reporting(E_ALL & ~E_WARNING);        $domDoc = new DOMDocument('1.0', 'UTF-8');        $domDoc->preserveWhiteSpace = false;        $domDoc->formatOutput = true;        $domDoc->encoding = 'UTF-8';        $domDoc->load('./data/expression.xml');        $xpath = new DOMXpath($domDoc);        if($domDoc->getElementsByTagName('expression')->length>0){            // If we already have expression tag defined            $expression = $domDoc->getElementsByTagName('expression')[0];        }else{            // If we don't have any expression tag, i.e. file is empty            $expression = $domDoc->createElement('expression');        }    $vocabulario = $domDoc->createElement('vocabulario');    $vocabulario->setAttribute('word', $_POST['word']);    $classe = $domDoc->createElement('classe', $_POST['classe']);    $domDoc->appendChild($expression);    $expression->appendChild($vocabulario);    $vocabulario->appendChild($classe);    file_put_contents('./data/expression.xml', $domDoc->saveXML());    header('location:index.php');}?><form method="post"><div class="col-75">  <script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>  <script src="https://cdnjs.cloudflare.com/ajax/libs/select2/4.0.3/js/select2.min.js"></script>  <link href="https://cdnjs.cloudflare.com/ajax/libs/select2/4.0.3/css/select2.css" rel="stylesheet" />  <select name="classe[]" multiple="multiple">    <option value="| adjective |">adjective</option>    <option value="| adverb |">adverb</option>    <option value="| noun |">noun</option>    <option value="| verb |">verb</option>  </select>  <script type="text/javascript">    var s2 = $("#classe").select2({      placeholder: "Select",      tags: true    });  </script></div>
查看完整描述

1 回答

?
慕標琳琳

TA貢獻1830條經驗 獲得超9個贊

該代碼適合我:


/home/vagrant/foo/index.php:3:

array (size=2)

? 'classe' =>?

? ? array (size=2)

? ? ? 0 => string '| adjective |' (length=13)

? ? ? 1 => string '| adverb |' (length=10)

? 'submitSave' => string 'Save' (length=4)

在 PHP 中有一些特殊的配置?


我的測試:


<?php


var_dump($_POST);


?>

<form method="POST">

? ? ?<div class="col-75">

? ? <script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>

<script src="https://cdnjs.cloudflare.com/ajax/libs/select2/4.0.3/js/select2.min.js"></script>

<link rel="stylesheet"/>

? ? <select id="classe" name="classe[]" multiple name="event_type[]" class="form-control" required>

? <option value="| adjective |">adjective</option>

? <option value="| adverb |">adverb</option>

? <option value="| noun |">noun</option>

? <option value="| verb |">verb</option>

</select>

<script type="text/javascript">

? ? ? ? var s2 = $("#classe").select2({

? ? placeholder: "Select",

? ? tags: true

});



? ? </script>

</div>

<div class="row">


? ? ? ? ? ? <td><input type="submit" value="Save" name="submitSave"></td>

? ? </div>??

</form>

編輯:


當你在 PHP 中接收數組數據時,在你的情況下:


<select name="classes[]" >

PHP var$_POST['classes']不是$_POST['classes[]'],它是一個數組,如果你想將它用作字符串,你必須使用implode


查看完整回答
反對 回復 2023-04-15
  • 1 回答
  • 0 關注
  • 142 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號