2016-07-20 3 views
0

У меня есть этот код в моем файлеПолучить параметр от выбранного значения в PHP

$cdresult=$conn->query("SELECT * FROM tahun"); 
      echo "<select id=\"cd\" name=\"cd\">"; 
      do{ 
       $cdTitle=$cdrow["thn"]; 
       $cdValue=$cdrow["id_tahun"]; 
       echo "<option value='$cdTitle'> 
       $cdTitle 
      </option>"; 
      }while ($cdrow=$cdresult->fetch_assoc()); 
      echo " </select>"; 
      $selected_val=$_POST['cd']; 
       echo "You have selected : $selected_val"; 

как получить значение параметра, когда я выбрал его с моего сайта, потому что, когда я использую

$selected_val=$_POST['cd'];   
echo "You have selected : $selected_val"; 

я получил это уведомление об ошибке: Undefined индекс: компакт-диск в C: \ XAMPP \ HTDOCS \ ххх \ ххх \ note.php на линии 99

Я использую этот скрипт для получения значения, чтобы я мог выполнить проверку для моего запроса. спасибо

+0

' 'проверить все опубликованные значения –

+0

при первой загрузке ничего не будет опубликовано –

+0

при попытке php print_r ($ _ POST); единственный отправил это обратно «Array()» –

ответ

0

$_POST['cd'] будет не определено, если браузер никогда не отправил эту информацию в ваш скрипт. Это происходит, например, при первой загрузке страницы (когда форма не была отправлена).

Проверьте, доступны ли данные, прежде чем пытаться их использовать. Измените последние две строки в

if(isset($_POST['cd'])) echo "You have selected : $_POST[cd]"; 
+0

в порядке, я получил его, так как, если я хочу, чтобы он был отправлен на скрипт каждый раз, когда я изменяю выбранное значение? –

0

Я не уверен, как ценности представляется на этой странице, Ваше поле ввода должно быть внутри для представления значения.

Таким образом, вы получаете это предупреждение, вы можете избавиться от него, проверяя,

if (true == isset($_POST['cd'])) { 
    $selected_val = $_POST['cd']; 
    echo "You have selected : $selected_val"; 
} 

PHP Dealing with Form

+0

хорошо, я получил его, так как, если я хочу, чтобы он был отправлен на скрипт каждый раз, когда я изменил выбранное значение? –

0

попробовать этот код:

<html> 

//function for get selected element 
<script type="text/javaScript"> 
    function getval() { 
     var val = document.getElementById("cd").value; 
     document.getElementById('selected').innerHTML = '<span>' + val +'</span>'; 


    } 
</script> 
<form action="" method="POST"> 
<?php 

    $cdresult=$conn->query("SELECT * FROM tahun"); 

       echo '<select id="cd" name="cd" onchange="getval()">'; 
       while ($cdrow = $cdresult->fetch_assoc()) { 
        echo '<option value="'.$cdrow['id_tahun'].'">'.$cdrow['thn'].'</option>'; 
       } 
       // do{ 
       //  var_dump($cdrow); 
       //  $cdTitle=$cdrow["thn"]; 
       //  $cdValue=$cdrow["id_tahun"]; 
       //  echo "<option value='$cdTitle'> 
       //  $cdTitle 
       // </option>"; 
       // }while ($cdrow=$cdresult->fetch_assoc()); 

       echo " </select>"; 
       $selected_val=$_POST['cd']; 
        echo "You have selected : $selected_val"; 

    ?> 
    <button name="submit">submit</button> 
    </form> 
</html> 

function getval() { 
 
      var val = document.getElementById("cd").value; 
 
      document.getElementById('selected').innerHTML = '<span>' + val +'</span>'; 
 
      console.log(val); 
 
      
 
     }
<html> 
 
    <select name="cd" id="cd" onchange="getval()"> 
 
     <option value="1">1</option> 
 
     <option value="2">2</option> 
 
     <option value="3">3</option> 
 
     <option value="4">4</option> 
 
</select> 
 
<div> 
 
    you have selected value :<span id="selected"></span> 
 
</div> 
 
</html>

+0

он не будет работать сэр, кто-то скажет мне использовать AJAX, но я не знаю, как его использовать .. вы можете мне сказать, как? –

+0

это работа хорошо мой система. –

+0

ОК спасибо, что это работает, но проблема в том, когда я нажимаю кнопку «Отправить» после выбора опции, выбранный индекс был сброшен в первое условие. как он может быть в том же положении, что и я выбираю вариант.? –

Смежные вопросы