За последние 24 часа нас посетили 22463 программиста и 1062 робота. Сейчас ищут 677 программистов ...

Проблема с выводом на экран данных при выборе из выпадающего списка!

Тема в разделе "PHP и базы данных", создана пользователем Pavl, 20 июл 2020.

  1. Pavl

    Pavl Новичок

    С нами с:
    3 ноя 2017
    Сообщения:
    44
    Симпатии:
    0
    Добрый день!
    На сайте есть две формы.
    Первая форма - для добавления пользователем "часовых поясов" и "смещения по времени". Эти данные заносятся в БД (таблица 'poyas3' с полями 'title'(часовой пояс) и 'offset'(смещение по времени)). Значения поля 'title' подставляются в выпадающий список.
    Вторая форма - выпадающий список "часовых поясов"('title').
    Одна из идей скрипта в том, что при выборе значения из выпадающего списка и нажатии кнопки "Отправить" на экране должна появляться строка "Смещение от Гринвича: n часов". n часов - это значение 'offset' из базы данных в зависимости от выбора пользователем названия часового пояса из выпадающего списка.
    Проблема в том, что когда выбираешь определённое значение из выпадающего списка и нажимаешь "Отправить" , то вместо одной строки на экране появляются сразу все строки, которые есть в БД.

    Фрагмент кода относящегося к выпадающему списку:
    PHP:
    1. <form action="scriptdz811.php" method="post" name="form1">
    2.     <p><select name="list1">
    3.             <option>Выберите из списка</option>
    4.  
    5.                <?php foreach($table as $idx => $data) {
    6.                 echo '<option>'.$data['title'].'</option>';
    7.                 }?>
    8.         </select></p>
    9.     <p><input type="submit" value="Отправить"></p>
    10. </form>
    Фрагмент кода относящегося к выводу на экран определённой строки со смещением по времени:
    PHP:
    1. if(isset($_POST['list1'])){
    2.     $select1 = $_POST['list1'];
    3.    foreach($table as $idx => $data) {
    4.        echo 'Смещение от Гринвича:' .$data['offset']. 'часов';
    5.                 }
    6. }
    Если из представленного кода видна ошибка, то что не так я делаю?
     
  2. ADSoft

    ADSoft Старожил

    С нами с:
    12 мар 2007
    Сообщения:
    3.823
    Симпатии:
    736
    Адрес:
    Татарстан
    А где код запроса в бд?
     
  3. Pavl

    Pavl Новичок

    С нами с:
    3 ноя 2017
    Сообщения:
    44
    Симпатии:
    0
    Надеюсь, что этот:
    PHP:
    1. $query = 'SELECT * FROM `poyas3`';
    2. $result = $pdo->query($query);
    3. $table = $result->fetchAll(PDO::FETCH_ASSOC);
     
  4. ADSoft

    ADSoft Старожил

    С нами с:
    12 мар 2007
    Сообщения:
    3.823
    Симпатии:
    736
    Адрес:
    Татарстан
    ну ё-мае, выбираете ВСЕ записи без условий..... какой в этом смысл?
    вам же нужна какая то одна конкретная запись, ну почитайте по запросы к БД, зачем они вообще и что такое
    в вашем случае нужно условие: WHERE поле_бд = Какому-то значению
     
    Pavl нравится это.
  5. Drunkenmunky

    Drunkenmunky Активный пользователь

    С нами с:
    12 авг 2020
    Сообщения:
    1.476
    Симпатии:
    281
    У вас проблема в html, а не в php
     
    Pavl нравится это.