|
|
|
| Всем привет. Вопрос? Как привязать в форме поиска поле select к базе mysql. Есть выподающее меню: список стран, берется из базы, необходим запрос который при выборе страны выводил бы данные из другой таблицы. Сделал такой код:
<form name='input' method="post" id="searchform" action='http://localhost:8888/forum/form1.php'>
<select class='input' type='select' name='id'>
<?php $sql = mysql_query("SELECT id, stran FROM `wp_countri`");?>
<option value='id' disabled selected='selected'>Выберите страну</option>
<?php while($row = mysql_fetch_assoc($sql))
{
$id=$row['id'];
echo '<option value="'. $row['id'] .'">'. $row['stran'] .'</option>';
}
?>
</select>
<?php $sql = mysql_query("SELECT event_subject
FROM `phpbb_calendar_events` WHERE 'id' = '".$_POST['id']."'");?>
<?php while($row = mysql_fetch_assoc($sql))
{
echo '<option value="'. $row['event_subject'] .'"></option>';
}
if (isset($_POST['id'])) {$country1=$_POST['id'];}
echo "".$country1."<br/>";
?>
<input type="submit" id="searchsubmit" name ="id" value="найти" />
</form>
|
Список выбирается, а дальше пишет на странице ошибку searchform4.php on line 23: mysql_fetch_assoc() expects parameter 1 to be resource, boolean given
Подскажите в чем ошибка. Спасибо. | |
|
|
|
|
|
|
|
для: tstas
(23.06.2011 в 03:35)
| | У вас нет проверки на существование "$_POST['id']"
Сделайте нечто вроде:
?>
</select>
<?php
if(isset($_POST['id']) and is_numeric($_POST['id'])){
$sql = mysql_query("SELECT event_subject
FROM `phpbb_calendar_events` WHERE 'id' = '".$_POST['id']."'");?>
<?php while($row = mysql_fetch_assoc($sql))
{
echo '<option value="'. $row['event_subject'] .'"></option>';
}
if (isset($_POST['id'])) {$country1=$_POST['id'];}
echo "".$country1."<br/>";
?>
<input type="submit" id="searchsubmit" name ="id" value="найти" />
<?php
}
?>
|
| |
|
|
|
|
|
|
|
для: Shorr Kan
(23.06.2011 в 07:16)
| | Спасибо! Но при вставки строки
if(isset($_POST['id']) and is_numeric($_POST['id'])){
|
весь текст и форма пропадает. Может в базе както связать через ключ, если не сложно может подскажите. Спасибо. | |
|
|
|