Выборка из таблицы

  • Автор темы Автор темы Alexander_New
  • Дата начала Дата начала

Alexander_New

Guest
Выборка из таблицы

Имеются две таблицы: Hotels и Country, в обеих таблицах есть поля country_id и hot_country_id. Необходимо что бы появлялся список с заголовком Страны и ниже в виде списка отели, которые к этой стране относятся. Все сделал, но как-то не так все выходит

PHP:
$query = "SELECT Name,hot_name FROM Hotels,Country where Hotels.hot_country_id = Country.country_id";
$result = MYSQL_QUERY($query);


$number = MYSQL_NUMROWS($result);

$i = 0;

WHILE ($i < $number){
$hot_name = mysql_result($result,$i,"hot_name");
$name = mysql_result($result,$i,"Name");
PRINT "<span><a class=left_menu href='/'>$name</a></span><br>";
print "$hot_name"
PRINT "<BR><BR>";

$i++;
}

В чем нет так?
 
Да, так лучше...но все равно дублируется имя страны под каждым новым отелем. Мне нужно что было так:

Пример:

Название страны
-отель такой-то
-отель такой-то
........

Название страны
-отель такой-то
-отель такой-то
........
 
Ну так у тебя для каждого $i сделан вывод страны. Запоминай выведенное название отеля и выводи его только если оно не совпадает с запомненным на предыдущем шаге.
 
требуемая структура не вписываются в реляционную модель, так что то, что вернет mysql в любом случае как-то придется обрабатывать на стороне пхп.
 
Пробую вкладывать в циклы подциклы, но ничего не получается....подскажите, пожалуйста, кто может в виде кода как это сделать, ну очень срочно нужно!!!!

Спасибо!
 
вкадывать ничего никуда не надо.
тебе yugene подсказал уже.
ты читать умеешь? или только верещать?
 
Я ж пишу, что пробую делать так так советует yugene, но не получается (( Вот и прошу помощи, как новичку, в этом деле!

P.S. я не верещу, попрошу без грубости
 
когда на форуме человек кричит
ну очень срочно нужно!!!!
то это выглядит, как верещание. запрещенное правилами форума, кстати.
И это не ты меня должен просить без грубости, поскольку грубости никакой нету - есть констатация факта. А это я тебя попрошу без верещаня. второй раз и последний.

Я ж пишу, что пробую делать так так советует yugene
ГДЕ у
yugene написано слово "напихать цикл"?
у него есть слово "запомнить", которое ознаяает "присвоить переменной значение" и "сравнить", которое означает "сравнить".
Смысл какого из этиз слов тебе не ясен?

-~{}~ 10.03.05 18:15:

кстати, ещё ни разу, ни один страдалец, неспособный реализовать этот примитвиный алгоритм, не разместил его в форуме, отличном от "пхп и муйэскуэль".

В поиск посылать даже не буду пытаться.
Поскольку запомнить и вывести город только по изменению и воспользоваться поиском - это задачи примерно равные по интеллектуальным затратам.
 
PHP:
$result_country_name = mysql_query("SELECT * FROM Country WHERE 'is_Island' = 0") or die(mysql_error());

while ($myrow = mysql_fetch_array($result_country_name))
{
PRINT "<br><h1 id='title_hotels_left'>$myrow[Name]</h2>";


$result_hotel_name = mysql_query("SELECT * FROM Hotels WHERE hot_country_id = '$myrow[country_id]' ORDER BY `hot_Name` ASC ") or die(mysql_error());

while ($myrow2 = mysql_fetch_array($result_hotel_name))
{
print "<ul class='left_menu'>";
print "<li>";
PRINT "<a class=left_menu href='/'>$myrow2[hot_name]</a>";
print "</li>";
print "</ul>";


}

}

Вот об этом коде с спрашивал изначально! Скажу спасибо самому себе!
 
Скажи, потому что база тебе за такой алгоритм спасибо вряд ли скажет. Лучше воспользуйся поиском по форуму, внимательно перечитай топик (особенно посты yugene и Фаната) и скорее, пока база не "легла" от перегрузки, переделай по-человечески...
 
Сверху