2014-11-20 2 views
0

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

<?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

А что не работает? – Rizier123

+0

Это ошибка отображения «Неопределенный индекс: драйвер в C: \ wamp \ www \ taxiweb \ mainT \ booking_management.php в строке 301» – KT1

+1

Вы можете получить имя выбора драйвера после отправки или использовать ajax refer: http: //api.jquery .com/jquery.ajax/ – Mani

ответ

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'].

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» – KT1

+0

обновлен, попробуйте еще раз :) –

+0

все тот же. теперь выдают две ошибки «неопределенный индекс» в двух строках. – KT1

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 .....» – KT1

+0

вы можете выслать мне код в строке 301 в booking_management.php –

+0

echo '' . 'Confirm' . ''; – KT1

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.

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