2016-06-02 3 views
0

Вот мое падение вниз:Как извлечь значение выбранного значения из раскрывающегося списка в PHP?

<form name="form" method="POST" style="display:inline;"> 
      <select name="category" id="category" value="category" class="form-control ddplaceholder" style="width:220px;font-size:18px;font-family:Roboto;"> 
       <option value="" disabled selected>Select Category</option> 
      <?php 
      $sth = $conn->prepare('Select name From category'); 
      $sth->execute(); 
      $data = $sth->fetchAll(); 
      foreach ($data as $row){ 
       if($row['name']!="") 
      echo ' <option id=\"CategoryName\" nameCategoryNameVendorName\" value="' .$row['name']. '">'.$row['name'].'</option>'; 
      } 
      ?> 
      </select> 
    </form> 

И я пытаюсь получить к нему доступ, используя следующий код:

if(!empty($_POST['category'])) 
    $category=$_POST['category']; 

Когда эхо значение $category, она возвращает нуль. Почему это? Как я могу получить значение выбранного значения из раскрывающегося списка?

+0

Выбери тег не отключается, только первое значение «Выберите категорию» отключено для выбора. Эй, но давайте не будем беспокоиться об этом. Выпадающий выполняет свою работу. –

+0

@Rishi Выбор не отключен, это первый вариант, который отключен. Просто правый свиток. Действие в форме отсутствует, поэтому по умолчанию это тот же скрипт. – Amarnasan

+0

Вы должны отправить свою форму. – ASR

ответ

1

Привет В PHP мы можем отправить форму, используя кнопку отправки или используя javascript. Если вы хотите использовать только php, вы можете добавить кнопку отправки и проверить, отправлено ли это сообщение, а затем проверить категорию как это.

 <form name="form" method="POST" style="display:inline;"> 
        <select name="category" id="category" value="category" class="form-control ddplaceholder" style="width:220px;font-size:18px;font-family:Roboto;"> 
         <option value="" disabled selected>Select Category</option> 
        <?php 
        $sth = $conn->prepare('Select name From category'); 
        $sth->execute(); 
        $data = $sth->fetchAll(); 
        foreach ($data as $row){ 
         if($row['name']!="") 
        echo ' <option id=\"CategoryName\" nameCategoryNameVendorName\" value="' .$row['name']. '">'.$row['name'].'</option>'; 
        } 
        ?> 
        </select> 
    <input type="submit" name="submit" value="submit"> 
      </form> 

<?php 

    if(isset($_POST['submit'])){ 
     $category=$_POST['category'];} 


or you can try javascript for submission it will work on change of value in select box 

    <form name="form" method="POST" style="display:inline;"> 
       <select name="category" id="category" value="category" class="form-control ddplaceholder" style="width:220px;font-size:18px;font-family:Roboto;" onchange="document.form.submit();"> 
        <option value="" disabled selected>Select Category</option> 
       <?php 
       $sth = $conn->prepare('Select name From category'); 
       $sth->execute(); 
       $data = $sth->fetchAll(); 
       foreach ($data as $row){ 
        if($row['name']!="") 
       echo ' <option id=\"CategoryName\" nameCategoryNameVendorName\" value="' .$row['name']. '">'.$row['name'].'</option>'; 
       } 
       ?> 
       </select> 
     </form> 

<?php 

if(!empty($_POST['category'])) 
    $category=$_POST['category']; 
+0

Ну, вы здесь не написали код JS? –

+1

JS-код - это просто document.form.submit() Я написал его в select onchange, пожалуйста, посмотрите :) – user1234

0

Вы должны использовать тип входа представить в форме, чтобы получить значение в PHP

<form name="form" method="POST" style="display:inline;"> 
       <select name="category" id="category" class="form-control ddplaceholder" style="width:220px;font-size:18px;font-family:Roboto;"> 
        <option value="" disabled selected>Select Category</option> 
       <?php 
       $sth = $conn->prepare('Select name From category'); 
       $sth->execute(); 
       $data = $sth->fetchAll(); 
       foreach ($data as $row){ 
        if($row['name']!="") 
       echo ' <option id="CategoryName" value="' .$row['name']. '">'.$row['name'].'</option>'; 
       } 
       ?> 
       </select> <input type="submit" /> 
     </form> 

    <?php 
    if(!empty($_POST['category'])) 
     $category=$_POST['category']; 
    print_r($category); 
    ?> 
Смежные вопросы