Как передать значение html select через URL в php

0

Я пытаюсь передать значение параметра выбора через значение url.selection, исходящее из mysql table.i, чтобы передать это имя драйвера на другую страницу.

 <?php
//another select query goes here.

$query1= "SELECT  * FROM driver WHERE status='Available'" ;
echo '<td>'.'<select name="driver">';
                        $result1= mysql_query($query1);
                        while($row1 = mysql_fetch_assoc($result1))
                                    {   
                                    echo '<option value="'.$row1["name"].'">'.$row1["name"].'</option>';    
                                    }
                                    echo '</select>'.'</td>';
echo'<a rel="facebox" href=db_confirm_booking.php?id='.$row["id"].'&driver='.$_POST['driver'].'>' . 'Confirm' . '</a>';

?>
  • 0
    А что не работает не так?
  • 0
    Это ошибка отображения «Неопределенный индекс: драйвер в C: \ wamp \ www \ taxiweb \ mainT \ booking_management.php на линии 301»
Показать ещё 2 комментария
Теги:

4 ответа

0

попробуйте этот код

<?php
//another select query goes here.

$query1= "SELECT  * FROM driver WHERE status='Available'" ;
echo '<td>'.'<select name="driver" 
onChange="window.location.href=this.value">';
$result1= mysql_query($query1);
while($row1 = mysql_fetch_assoc($result1))
{   
echo '<option value="db_confirm_booking.php?id='.$row["id"].'&driver='.$_POST['driver'].'">"'.$row1["name"].'">'.$row1["name"].'</option>';    
}
echo '</select>'.'</td>';
echo'<a rel="facebox" href=db_confirm_booking.php?id='.$row["id"].'&driver='.$_POST['driver'].'>
' . 'Confirm' . '</a>';

?>

пример кода

<select onChange="window.location.href=this.value">
<option value="www.google.com">A</option>
<option value="www.aol.com">B</option>
</select>
  • 0
    та же ошибка "Неопределенный индекс: драйвер в C: \ wamp ....."
  • 0
    Вы можете отправить мне код на номер строки 301 в booking_management.php
Показать ещё 4 комментария
0

U может добавить функцию onclick для поля выбора, попробуйте таким образом

<?php
//another select query goes here.

$query1= "SELECT  * FROM driver WHERE status='Available'" ;
echo '<td>'.'<select name="driver" onchange="window.location.href=\'db_confirm_booking.php?driver=' . $_POST['driver'] . '&id=\'+this.value">';
                        $result1= mysql_query($query1);
                        while($row1 = mysql_fetch_assoc($result1))
                                    {   
                                    echo '<option value="'.$row1["name"].'">'.$row1["name"].'</option>';    
                                    }
                                    echo '</select>'.'</td>';
echo'<a rel="facebox" href=db_confirm_booking.php?id='.$row["id"].'&driver='.$_POST['driver'].'>' . 'Confirm' . '</a>';

?>
  • 0
    та же ошибка: «Неопределенный индекс: драйвер в C: \ wamp \ www \ taxiweb \ mainT \ booking_management.php в строке 301»
  • 0
    обновился, попробуйте еще раз :)
Показать ещё 1 комментарий
0
<select name="sel" id="sel" onchange="seturl(this.value)">
<option value=""></option>
</select>

<script>
function seturl(id)
{
  document.forms[0].action="test.php?driver="+id;
  document.forms[0].submit();
}
</script>

Он перезагрузит страницу с именем драйвера в url.

0

Используйте jQuery.

Вызовите событие change события.

$(function(){
  $("[name=driver]").die('change').live('change', function(){
    var driver = $(this).val();
    if (typeof driver !== 'undefined') {
      window.location.href = 'YOUR_FILE.php?driver='+driver;
    }
  });
});

А также

в вашем YOUR_FILE.php, получите драйвер, используя $_GET['driver']

Или, если вы хотите, чтобы форма была более безопасной, возьмите скрытую переменную.

При изменении driver присвойте ему значение driver.

Отправьте форму.

В своем PHP файле получите его как $_POST['hid_driver'].

Ещё вопросы

Сообщество Overcoder
Наверх
Меню