Перейти к содержанию
Форумы

Метод Post И Sql


Рекомендуемые сообщения

Проблема с input <options> из Базы данных :unsure:

 

Допустим есть база:

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"]); но тоже не выходит ничего

 

В чём моя ошибка, почему не переходит значение через Метод пост? И как сделать что бы это работало?

Ссылка на комментарий
Поделиться на другие сайты

Большое спасибо, это помогло :)

Но теперь у меня другая проблема. Почемуто запрос:

$file = mysql_query('select * from dzz_predmets where job='.$otdel);

не срабатывает. В чём может быть проблема? Может быть что то с кодировкой базы? :huh:

Ссылка на комментарий
Поделиться на другие сайты

Сумел сделать что бы всё работало вот так:

 

$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'];}
  ;}

 

Вроде работает, но мне кажется что можно сделать как то попроще :unsure:

Ссылка на комментарий
Поделиться на другие сайты

Для публикации сообщений создайте учётную запись или авторизуйтесь

Вы должны быть пользователем, чтобы оставить комментарий

Создать учетную запись

Зарегистрируйте новую учётную запись в нашем сообществе. Это очень просто!

Регистрация нового пользователя

Войти

Уже есть аккаунт? Войти в систему.

Войти
×
×
  • Создать...