Revix Опубликовано 16 декабря, 2008 Жалоба Поделиться Опубликовано 16 декабря, 2008 Проблема с input <options> из Базы данных Допустим есть база: CREATE TABLE IF NOT EXISTS `workers` ( `id` int(5) NOT NULL auto_increment, `job` varchar(50) default NULL, `name` varchar(30) default NULL, `e_mail` varchar(130) default NULL, PRIMARY KEY (`id`) ) ENGINE=MyISAM DEFAULT CHARSET=cp1251 AUTO_INCREMENT=8; INSERT INTO `workers` (`id`, `job`, `name`, `e_mail`) VALUES (1, 'Поставки', 'Гуливер Карупкович', '[email protected]'), (2, 'Персонал', 'Семён Матвеич', '[email protected]'), (3, 'Финансы', 'Ризольда Чатоповна', [email protected]'), И есть код: <form method=post> <center> <tr> <td>Выберите отдел</td> <td><select class='input' name='otdel'> <? $work = mysql_query('select * from workers'); for ($i=0;$i<mysql_num_rows($work);$i++) { $workl=mysql_fetch_assoc($work); ?> <option><?=$workl['job']?></option> <?;} ?> </select></td> </tr> <input name="mas" type=submit value='Посмотреть'> </center> </form> <? if (isset($_POST["mas"])) { $otdel = strip_tags($otdel); $file = mysql_query('select * from dzz_predmets where job='.$otdel); $name= $file['name']; $work = $otdel; $mail = $file['e_mail']; echo ('Мэйл = '.$mail.' <br> Отдел '.$work.' = <br> Заведующий ='.$name.'.'); }?> Но почему то где то на "$otdel = strip_tags($otdel);" всё сбивается и дальше ничего не получается. Пробовал использовать вместо этого $otdel = clear_txt($_POST["otdel"]); но тоже не выходит ничего В чём моя ошибка, почему не переходит значение через Метод пост? И как сделать что бы это работало? Ссылка на комментарий Поделиться на другие сайты Поделиться
admin Опубликовано 16 декабря, 2008 Жалоба Поделиться Опубликовано 16 декабря, 2008 Видимо надо $otdel = strip_tags($_POST["otdel"]); Также попробуйте указать все параметры для "form". Ссылка на комментарий Поделиться на другие сайты Поделиться
Revix Опубликовано 16 декабря, 2008 Автор Жалоба Поделиться Опубликовано 16 декабря, 2008 Большое спасибо, это помогло Но теперь у меня другая проблема. Почемуто запрос: $file = mysql_query('select * from dzz_predmets where job='.$otdel); не срабатывает. В чём может быть проблема? Может быть что то с кодировкой базы? Ссылка на комментарий Поделиться на другие сайты Поделиться
Revix Опубликовано 16 декабря, 2008 Автор Жалоба Поделиться Опубликовано 16 декабря, 2008 Сумел сделать что бы всё работало вот так: $otdel = strip_tags($_POST["otdel"]); $a = mysql_query('select * from workers'); for ($i=0;$i<mysql_num_rows($a);$i++) { $all=mysql_fetch_assoc($a); if ($otdel==$all['job']){$name=$all['name']; $mail=$all['e_mail'];} ;} Вроде работает, но мне кажется что можно сделать как то попроще Ссылка на комментарий Поделиться на другие сайты Поделиться
admin Опубликовано 16 декабря, 2008 Жалоба Поделиться Опубликовано 16 декабря, 2008 Хорошо. Думаю, что со временем подобное сможете делать легко и просто Ссылка на комментарий Поделиться на другие сайты Поделиться
Рекомендуемые сообщения
Для публикации сообщений создайте учётную запись или авторизуйтесь
Вы должны быть пользователем, чтобы оставить комментарий
Создать учетную запись
Зарегистрируйте новую учётную запись в нашем сообществе. Это очень просто!
Регистрация нового пользователяВойти
Уже есть аккаунт? Войти в систему.
Войти