За последние 24 часа нас посетили 22357 программистов и 994 робота. Сейчас ищут 678 программистов ...

Как вывести данные из нескольких таблиц?

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

  1. beki00007

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

    С нами с:
    10 мар 2015
    Сообщения:
    2
    Симпатии:
    0
    Имеется такой php код:

    require_once "config.php";

    $city = $_POST['city'];
    $tour = $_POST['tour'];
    $hotel = $_POST['hotel'];
    $date1 = $_POST['date1'];
    $date2 = $_POST['date2'];

    echo '
    <table class="search_table">
    <tr class="tr_head">
    <td>Тур</td>
    <td>Отель</td>
    <td>Город</td>
    <td>Дата</td>
    <td>Цена</td>
    </tr>
    ';

    $query = mysql_query("SELECT `id`. `title`, `tour`, `tourprice` FROM `tours` WHERE `city` = $city");
    while ($sql = mysql_fetch_array($query)) {
    echo '
    <tr>
    <td>'.$sql['title'].'</td>
    <td>'.$sql['tour'].'</td>
    <td>'.$sql['hoteltitle'].'</td> // Как сюда вывести название отеля из второй таблицы?
    <td>'.$sql['hoteldate'].'</td>
    <td>'.$sql['tourprice'] + $sql['hotelprice'].'</td>
    </tr>
    ';
    }

    echo '</table>';

    Как вывести данные из нескольких таблиц? Как вывести название отеля из второй таблицы hotel(id, hoteltitle, hotelprice, hoteldate)?
     
  2. MouseZver

    MouseZver Суперстар

    С нами с:
    1 апр 2013
    Сообщения:
    7.745
    Симпатии:
    1.321
    Адрес:
    Лень
    вывод данных с нескольких таблиц с помощью LEFT JOIN
     
  3. Ondottr

    Ondottr Новичок

    С нами с:
    24 ноя 2017
    Сообщения:
    46
    Симпатии:
    5
    PHP:
    1. require_once "config.php";
    2.  
    3. $city = $_POST['city'];
    4. $tour = $_POST['tour'];
    5. $hotel = $_POST['hotel'];
    6. $date1 = $_POST['date1'];
    7. $date2 = $_POST['date2'];
    8.  
    9. echo '
    10. <table class="search_table">
    11. <tr class="tr_head">
    12. <td>Тур</td>
    13. <td>Отель</td>
    14. <td>Город</td>
    15. <td>Дата</td>
    16. <td>Цена</td>
    17. </tr>
    18. ';
    19. $query = mysql_query("
    20. SELECT
    21.    `tours`.`id`,
    22.    `tours`.`title`,
    23.    `tours`.`tour`,
    24.    `tours`.`tourprice`
    25.    `таблица2`.`hoteltitle`,
    26.    `таблица2`.`hotelprice`
    27. FROM
    28.    `tours`,
    29.    `таблица2`
    30. WHERE
    31.    `tours`.`city` = '$city'
    32.    AND `таблица2`.`hoteltitle` = '$hotel'
    33.    ");
    34. while ($sql = mysql_fetch_array($query)) {
    35. echo '
    36. <tr>
    37. <td>'.$sql['title'].'</td>
    38. <td>'.$sql['tour'].'</td>
    39. <td>'.$sql['hoteltitle'].'</td> // Как сюда вывести название отеля из второй таблицы?
    40. <td>'.$sql['hoteldate'].'</td>
    41. <td>'.$sql['tourprice'] + $sql['hotelprice'].'</td>
    42. </tr>
    43. ';
    44. }
    45.  
    46. echo '</table>';
    и еще одно:
    mysql_query устарело, начиная с версии PHP 5.5.0, и удалено в PHP 7.0.0. Используйте вместо него MySQLi или PDO_MySQL
     
  4. MouseZver

    MouseZver Суперстар

    С нами с:
    1 апр 2013
    Сообщения:
    7.745
    Симпатии:
    1.321
    Адрес:
    Лень
    PHP:
    1. $city = $_POST['city'];
    2. $tour = $_POST['tour'];
    3. $hotel = $_POST['hotel'];
    4. $date1 = $_POST['date1'];
    5. $date2 = $_POST['date2'];
    А так же, не стоит создавать по факту дубликаты данных в разных переменных.
     
    Ondottr нравится это.
  5. Sail

    Sail Старожил

    С нами с:
    1 ноя 2016
    Сообщения:
    1.591
    Симпатии:
    360
    Спорное утверждение в данном контексте.
    Тут уместнее напомнить о функции filter_input()...
     
  6. MouseZver

    MouseZver Суперстар

    С нами с:
    1 апр 2013
    Сообщения:
    7.745
    Симпатии:
    1.321
    Адрес:
    Лень
    Это уже другая тема не относящиеся к данной.