Выпадающий элемент ввода, действующий странно и не передающий значение на страницу "search.php"

Новый код записан вместе. Он все еще не делает именно то, что я ищу. Прямо сейчас у меня есть форма, которая отправляет текстовое поле и выпадающий файл в мой код PHP. Текстовое поле работает нормально, но выпадающий список не передает информацию. Массив постоянно показывает только последний результат "WY". Вот мой код

<form action="search.php" method="get">
<input name="q" type="text"> 

<select name="states" id="states">
<option value="CA">CA</option>
<option value="NV">NV</option>
<option value="TX">TX</option>
<option value="WY">WY</option>
</select>
<input type="submit">
</form>

<?php
$dir = 'folder';
$_GET['states'];
$states = array("CA", "NV", "TX", "WY");
foreach($states as $state);
$q = (isset($_GET['q']))? strtoupper($_GET['q']) : ''; 
$res = opendir($dir); 
while(false!== ($file = readdir($res))) {
if(strpos(strtoupper($file),$q)!== false &&!in_array($file)) {
    echo "<a href='$dir/$file'>$file</a>";
}
}

closedir($res);
?>

<?php
echo $htmlHeader;
while($stuff){
echo $stuff;
}
echo "<script>window.location = 
'http://www.example.com/$dir/$state/$q.htm'</script>";
?>

3 ответа

Вам не нужно зацикливаться, если вы просто хотите получить значение выбранного <select> тег вам просто нужно просто получить имя.

$state = $_GET['states'];

Первая ошибка, которую я вижу, это изменение ниже

<form action="search.php" method="get">

в

 <form action="search.php" method="post">

Я выяснил проблему благодаря обоим вашим ответам. Я это очень ценю. PHP сложен, но я понимаю это медленно. Проверьте сайт как его обновленный: http://www.pissedoffdrivers.com/

Другие вопросы по тегам