За последние 24 часа нас посетили 18647 программистов и 1702 робота. Сейчас ищут 860 программистов ...

Помогите правильно оформить запрос

Тема в разделе "PHP и базы данных", создана пользователем azgardik, 9 авг 2015.

  1. azgardik

    azgardik Новичок

    С нами с:
    9 авг 2015
    Сообщения:
    9
    Симпатии:
    0
    Доброго времени суток. Есть база с таблицей в которой есть поля id obl city - надо создать запрос который будет возвращать записи только с определенными obl city - в таблице есть записи с разными obl city. простая выборка с параметрами возвращает правильную запись с БД НО... только первую - есть ли способ сделать все сразу или надо цыклом делать по количеству записей??? заранее благодарен. вот пример запроса :
    Код (PHP):
    1. $obl = $_GET["obl"];
    2. $city = $_GET["city"];
    3.  
    4. $query = "SELECT * FROM `city` WHERE obl = '$obl' AND id = '$city'";
    5. $res = mysql_query($query);
    6.  
    7. $row2 = mysql_fetch_array($res); 
    PHP, JavaScript, SQL и другой код пишите внутри тегов
    Код ( (Unknown Language)):
    1. [b]php][/b]Тут код[b][/[/b][b]code][/b][/color]
     
  2. Ganzal

    Ganzal Суперстар
    Команда форума Модератор

    С нами с:
    15 мар 2007
    Сообщения:
    9.893
    Симпатии:
    965
    не "только первую" а единственную. в московской области же только одна москва. так же и тут: область - уникальная, идентификатор города - тем более. что-то не так со структурой бд?
     
  3. azgardik

    azgardik Новичок

    С нами с:
    9 авг 2015
    Сообщения:
    9
    Симпатии:
    0
    извените не правильно задал вопрос - в городе есть услуги - мне их надо все получить в масиве по индефикатору города и области, еще раз извените - время ранее))
     
  4. VLK

    VLK Старожил

    С нами с:
    15 дек 2013
    Сообщения:
    3.010
    Симпатии:
    58
    Во первых за место mysql используй mysqli т.к. в будующих версиях mysql будет удалено, во вторых ты для начала в БД протестируй что оно вернет (в phpmyadmin есть окно для запроса, можно протестировать), может там всего одна запись.
     
  5. azgardik

    azgardik Новичок

    С нами с:
    9 авг 2015
    Сообщения:
    9
    Симпатии:
    0
    в базе 4 отеля - мне надо их вернуть в масив и на странице вывести - запрос типа взять все где область и город = 1 возвращает только первую запись - напишите как с такими параметрами получить все строки с БД по этим 2 параметрам пожалуйста - я адаптирую запрос под себя - или хоть пример какой-то
     
  6. YSandro

    YSandro Старожил

    С нами с:
    7 апр 2011
    Сообщения:
    2.523
    Симпатии:
    2
    А в какой таблице эти услуги-отели? Ты берешь из таблицы "city". Что-то мне подсказывает, что нужно брать из таблицы со списком отелей:
    Код (PHP):
    1. SELECT * FROM `отели` WHERE obl = '$obl' AND city = '$city' 
    ну а дальше
    Код (PHP):
    1. while($row2 = mysql_fetch_array($res)){
    2.   //вывести в массив или на страницу
    3. } 
    Если область и город приходят в виде числа, то лучше сразу приводить к числовому типу
    Код (PHP):
    1. $var = (int)$_GET["var"] 
    , чтобы защититься от инъекции в запросе. Если же приходят в виде строк - имен города и области, то вообще нельзя такие данные передавать в базу. Разве что подготовленными запросами через MySQLi