Запрос "Афиша" (выборка один к нескольким)

  • Автор темы Новый4ок
  • Дата начала

Новый4ок

Guest
Запрос "Афиша" (выборка один к нескольким)

Здравствуйте, уважаемые форумчане!
Я создаю развлекательный сайт своего города. Вначале сайт был статичным, затем в процессе наполнения информационной базы почувствовалась необходимость использования динамики. Я столкнулся с "php" и "MySql": изучал вопросы касательно прикладных нужд моего проекта.
Так вот, возникла необходимость сделать расписание кинофильмов в афише. Задача оказалась мне не по силам, так как я даже не знаю как мне искать её решения:(
Суть в том, что одному фильму должно соответствовать несколько кинотеатров, так как это сделано здесь или здесь и этих фильмов должно быть несколько.
Можно ли объяснить, хоть примерно, как построены таблицы в вышеуказанных примерах и какие к ним применены запросы?
Очень надеюсь на помощь!
 

Demiurg

Guest
Это называется связка многие ко многим.
 

Фанат

oncle terrible
Команда форума
Новый4ок
таблицы построены просто.
есть таблица фильмов
есть таблица кинотеатров
есть таблица - расписание. в ней указаны даты показов, id кинотеатра и id фильма.
вот из этой таблицы мы расписание и выводим.
для начала пусть это будет простой селект, где стоит условие на совпадение даты показа с заданной. оно тебе выберет все кинотеатры и все фильмы.
а дальше в цикле выводишь
 

Новый4ок

Guest
Построив три таблицы у меня получаются пары "кинотеатр - фильм", а надо чтобы кинотеатры группировались:(
А в циклах я не силен. Может подскажете как они работают простым языком? А без них никак?
 

Фанат

oncle terrible
Команда форума
ты это серьёзно?
про циклы?
А как ты собирался выводить результаты своих запросов?
 

Новый4ок

Guest
Фанат
Ну скажи что это такое, а я скажу серьёзно я или нет:)
 

Фанат

oncle terrible
Команда форума
нет, лучше ты скажи - что ты собирался делать со своим запросом после того, как его выполнил?
 

Serguitar

Новичок->продвинутый
Фанат
М-да... Раньше ты с такими не церемонился, а сразу посылал сюда, ну или
сюда, чтобы почитали хоть что-то, перед тем как спрашивать. Стареем, добреем?:)
 

Фанат

oncle terrible
Команда форума
Во-первых, я и раньше, и сейчас, сначала пытаюсь понять - что человек имеет в виду. А потом только - посылать.
Чем в данный момент и занимаюсь.
А во-вторых, у меня есть специальный ресурс, куда послать более адресно, чем в гугл или в оглавление мана как в копеечку.
 

Новый4ок

Guest
Фанат
Я собирался его засунуть на нужную мне страницу в Dreamweaver и спать спокойно.
 

Фанат

oncle terrible
Команда форума
то есть, Dreamweaver у тебя сам выводит результаты запросов?
или у тебя есть готовая страница, которая что-то делает, но ты не знаешь - как?
Я правда не понимаю.
Ну это всё равно, что спрашивать, как проехать до Ленинграда, а в процессе ответа выясняется, что автор не зщнает, где педаль газа.
Маловероятная ситуация, и поэтому я пытаюсь выяснить - либо мы друг друга не поняли, либо ты дествительно не знаешь, что делать с запросом.
Ты вообще, раньше, более простые запросы выводил как-то? Или это первый?
 

Новый4ок

Guest
Процесс проходит следующим образом:
- В Dreamweaver я делаю страницу.
- Затем я открываю окошко "Серверные поведения" в Dreamweaver и составляю SQL-запрос, используя предварительно созданные таблицы.
- После, из окошка "Серверные поведения-Bindings" мышкой перетаскиваю нужные мне элементы для отображения на веб-страничку - и всё работает.
______________________________________________

Вот составил я SQL-запрос и в коде страницы сразу появляется код:
Код:
<?php require_once('../Connections/afisha.php'); ?>
<?php
mysql_select_db($database_afisha, $afisha);
$query_Recordset2 = "SELECT * FROM vistavki WHERE adress LIKE '10%' ORDER BY foto ASC";
$Recordset2 = mysql_query($query_Recordset2, $afisha) or die(mysql_error());
$row_Recordset2 = mysql_fetch_assoc($Recordset2);
$totalRows_Recordset2 = mysql_num_rows($Recordset2);
?>
- скажем так.
А там где надо чтоб это отображалось код где-то такой:
Код:
<?php echo $row_Recordset2['time']; ?>
-~{}~ 10.05.05 14:54:

Методика с точки зрения профи примитивная, но мне большего и не надо.
То есть я не изучаю php и MySql, чтобы делать сайты и зарабатывать на этом, мне нужно сделать только один сайт. И ради одного сайта изучать кучу вещей которые мне понадабятся только один раз я думаю что мне не следует.
 

Новый4ок

Guest
Все в которых adress LIKE '10%' (в мае скажем около пятнадцати)
А в чем вопрос?
То есть, есть таблица vistavki. Её данные используются как на странице со всеми выставками, так и на странице каждого выставочного зала, но уже с другим условием запроса.
 

Фанат

oncle terrible
Команда форума
нет, сейчас вопрос не о запросах, а о пхп-коде.
судя по всему, такое понятие в программировании, как "цикл", тебе действительно незнакомо.
И ты его просто пропустил, он у тебя остался среди "код где-то такой".
Ок, спасибо, я разобрался.
я не изучаю php и MySql, чтобы делать сайты и зарабатывать на этом, мне нужно сделать только один сайт. И ради одного сайта изучать кучу вещей которые мне понадабятся только один раз я думаю что мне не следует.
Боюсь, у тебя врядли что-то получится.
Тем не менее, можешь попробовать. Доброхотов на форуме много. может, кто тебе и напишет.
Сам же я при таком уровне объяснить не возьмусь.
 

Новый4ок

Guest
ок. А можно просто ссылочку на нормальную, с т.з. понимания инфу. Потому что я так пока не разобрался эти циклы в php или MySql
 

Фанат

oncle terrible
Команда форума
Учти, что цикл у тебя уже есть.
Не знаю, откуда он берётся - кажется, дримвивер тебе сам его пишет.

Для твоей задачи, правда, придётся его малость видоизменить.
 

Новый4ок

Guest
Несколько часов сегодня потратил на изучение циклов. Ну не влезает в мой гуманитарный ум "этот PHP".
Зато я примерно понял как эти циклы должны выглядеть и где должны находиться :) (счастья полные штаны).
_____________________________________________

Итак я создаю три таблицы:

films
id_films
title

theatre
id_cinema
title

films_theatre
id_films
id_theatre

Дальше идёт взаимодействие php и MySql
Код:
<?php require_once('../Connections/test.php'); ?>
<?php
mysql_select_db($database_test, $test);
$query_Recordset1 = "SELECT * FROM films AS f, theatre AS t, films_theatre AS ft 
WHERE t.id=ft.id_theatre AND ft.id_films=f.id_films 
ORDER BY t.id_cinema, f.title";
$Recordset1 = mysql_query($query_Recordset1, $test) or die(mysql_error());
$row_Recordset1 = mysql_fetch_assoc($Recordset1);
$totalRows_Recordset1 = mysql_num_rows($Recordset1);
?>
А дальше я не могу разобраться :(

Поскольку здесь 100% есть люди, которые могут мне помочь, предлагаю:
Я хорошо разбираюсь в раскрутке/оптимизации/продвижении сайтов. Кто мне поможет решить мою задачу, тому я проведу анализ сайта с рекомендациями по продвижению и оптимизации.
 
Сверху