[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Помогите!!! связать таблицы!!!
viktorchemko
Помогите кто нибудь

У меня есть два меню
left_kat1 (id, title)
left_kat2 (id, title, cat)

надо чтобы на главной странице при выборе из меню left_kat1 отображались значения другого меню left_kat2
Как я понимаю их надо связать. left_kat1(id)=left_kat2(cat)
Как это сделать??



Спустя 1 минута, 55 секунд (19.02.2012 - 11:33) nugle написал(а):
тебе в той теме написали, зачем дублировать?
как ты делаешь?

Спустя 4 минуты, 17 секунд (19.02.2012 - 11:37) viktorchemko написал(а):
я вообще не понимаю как это реализовать ... я делал так ... при выборе из одного меню left_kat1 я передовал параметр методом GET в другую таблицу left_kat2 ... вроде работало ... но когда выбираешь название из left_kat2 чтобы перейти по ссылке на статью связь пропадала ...

Спустя 9 минут (19.02.2012 - 11:46) nugle написал(а):
так попробуй
SELECT left_kat1.title as `name_cat1`, left_kat2.* FROM left_kat1 JOIN left_kat2 ON left_kat2.cat = left_kat1.id

Спустя 4 минуты, 23 секунды (19.02.2012 - 11:51) viktorchemko написал(а):
это куда надо писать .. на страницу или в phpmyadmin ...
и как реализовать по нажатию из left_kat1 чтобы показывались значения из left_kat2

не ругай меня ... я вообще новичек в этом .. пока мало что понимаю ... помоги

Спустя 1 минута, 19 секунд (19.02.2012 - 11:52) nugle написал(а):
в скрипте, когда запрос делаешь.
через while выводишь.

Спустя 9 минут, 19 секунд (19.02.2012 - 12:01) viktorchemko написал(а):
Вот это мой левый блок который я подключаю на главной странице

<td valign="top" class="kat" width="200px">
<div class="left_kat1">Продукция</div>
<?php

//Здесь я вывожу категории из left_kat1
$result1 = mysql_query("SELECT id,title FROM left_kat1",$db);

if (!$result1)
{
echo "<p>Запрос на выборку данных из базы не прошел. <br> Напишите об этом администратору admin@ivkon.by. <br> <strong>Код ошибки:</strong></p>";
exit(mysql_error());
}

if (mysql_num_rows($result1) > 0)

{
$myrow1 = mysql_fetch_array($result1);

do
{
//Здесь я передовал параметр во второе меню
printf ("<p class='#'><a href='index.php?id=%s'>%s</a></p>",$myrow1["id"],$myrow1["title"]);

}
while ($myrow1 = mysql_fetch_array($result1));
}
else
{
echo "<p>Информация по запросу не может быть извлечена.<br> В таблице нет записей.</p>";
exit();
}

?>

<?
if (isset($_GET['id'])) {$cat = $_GET['id'];}
if (!isset($cat)) {$cat = 1;}
?>

<!---->
// Второе меню
<div class="left_kat1">Разделы</div>



<?php
$result2 = mysql_query("SELECT id,title,cat FROM left_kat2 where cat='$cat'" ,$db);

if (!$result2)
{
echo "<p>Запрос на выборку данных из базы не прошел. <br> Напишите об этом администратору admin@ivkon.by. <br> <strong>Код ошибки:</strong></p>";
exit(mysql_error());
}

if (mysql_num_rows($result2) > 0)

{
$myrow2 = mysql_fetch_array($result2);

do
{
// Здесь я передаю параметр на другую старницу
printf ("<p class='#'><a href='view_cat.php?cat=%s'>%s</a></p>",$myrow2["id"],$myrow2["title"]);

}
while ($myrow2 = mysql_fetch_array($result2));

}
else
{
echo "<p>Информация по запросу не может быть извлечена.<br> В таблице нет записей.</p>";
exit();
}

?>






</td>

Спустя 8 минут, 47 секунд (19.02.2012 - 12:10) johniek_comp написал(а):
Вот этот код убил
<?
if (isset($_GET['id'])) {$cat = $_GET['id'];}
if (!isset($cat)) {$cat = 1;}
?>


покажи где взял код? :D

UPD:
$cat = isset($_GET['id']) ? $_GET['id'] : 1;


так приятнее.... :rolleyes:

Спустя 2 минуты, 52 секунды (19.02.2012 - 12:13) nugle написал(а):
viktorchemko
ну подключаешь, молодец. а что от меня то ты хочешь? я написал что тебе конкретно сделать

Спустя 8 минут, 55 секунд (19.02.2012 - 12:22) viktorchemko написал(а):
как можно по ссылке еще передавать параметры ... чтобы по нажатию по ссылке в переменную заносилось значение ...

Спустя 54 секунды (19.02.2012 - 12:23) nugle написал(а):
viktorchemko
для чего тебе? у тебя задача непонятная. Сформулируй нормально

Спустя 7 минут, 45 секунд (19.02.2012 - 12:30) viktorchemko написал(а):
мне надо чтобы на главной странице отображались два меню . left_kat1 и left_kat2.
чтобы при выборе из left_kat1 отображались категории left_kat2.
я делал это методом GET т.е. передовал на главной странице id left_kat1 а в left_kat2 писал условие

if (isset($_GET['id'])) {$cat = $_GET['id'];}
if (!isset($cat)) {$cat = 1;}
$result2 = mysql_query("SELECT id,title,cat FROM left_kat2 WHERE cat='$cat'",$db);

выводил категории выбранные в left_kat1..
у меня все работает , просто при выборе из left_kat2 названий я передовал тоже методом GET значение в другую таблицу и у меня терялась связь , т.к. я передаю параметры на другую страницу
я хочу передать параметр иным способом .. или как то связать ..

Спустя 9 минут, 44 секунды (19.02.2012 - 12:40) m4a1fox написал(а):
johniek_comp
Цитата
$cat = isset($_GET['id']) ? $_GET['id'] : 1;

Фигасе... круто... так ей и надо... к логической правде, ее если что не так....smile.gif

Спустя 1 минута, 29 секунд (19.02.2012 - 12:42) nugle написал(а):
viktorchemko
ты выводи сразу и категории и подкатегории. Подкатегории скрываешь. При клике по категории, с помощью jquery открываешь подкатегории

Спустя 13 минут, 31 секунда (19.02.2012 - 12:55) johniek_comp написал(а):
m4a1fox
Что я тебе плохого сделал? dry.gif

Спустя 6 минут, 15 секунд (19.02.2012 - 13:01) m4a1fox написал(а):
johniek_comp
ИМХО! У тебя логическая ошибка... ты ее видишь? Я конечно понимаю, можно по всякому, и приравнять даже хоть к 'переменная ты есть или нет', но как, ты догадался, при else приравнять $cat к 1, для сведения, 1 - TRUE... как тут быть? Почему бы не приравнивать к false или null?

Спустя 5 минут, 26 секунд (19.02.2012 - 13:07) nugle написал(а):
m4a1fox
Ты уж конечно извини, но ты загоняешься, посмотри. Он просто привел аналог более быстродейственного способа инициализации переменной. Посмотри как у ТС реализовано. Он также сделал, только через тернарный оператор

Спустя 1 минута, 6 секунд (19.02.2012 - 13:08) m4a1fox написал(а):
nugle
Ок! Я же написал - ИМХО! Но тем не менее это нарушение логики... опять же ИМХО!

Спустя 6 минут, 12 секунд (19.02.2012 - 13:14) johniek_comp написал(а):
m4a1fox
Если id в строке браузера не введен то с базы пойдет запись под 1м айди, а если введен то мы вытащим нужную запись, тоже самое но без двух if-ов и одной красивой строкой, тут если я тебе лично не нравлюсь, не надо придумывать чушь

Спустя 2 минуты, 54 секунды (19.02.2012 - 13:17) m4a1fox написал(а):
johniek_comp
Ну тогда может стоить ее взять в одинарные кавычки? wink.gif

Спустя 3 минуты, 12 секунд (19.02.2012 - 13:20) johniek_comp написал(а):
m4a1fox
Там что дальше работа с ней как со строкой идет? Ты что пьяный в воскресенье утром? biggrin.gif

Спустя 4 минуты, 2 секунды (19.02.2012 - 13:24) m4a1fox написал(а):
johniek_comp
Лады, проехали... я не прав. Да и доказывать что то не хочется..... может и правда загон у меня произошел.
И да, к сведению,
Цитата

пьяный в воскресенье утром

Я не был пьяным с 28 (кажется) сентября 2009 года.

Спустя 13 минут, 30 секунд (19.02.2012 - 13:38) johniek_comp написал(а):
m4a1fox
Свернутый текст
Мне страшно представить что с тобой было 27 сентября 2009 года biggrin.gif

Спустя 1 час, 23 минуты, 45 секунд (19.02.2012 - 15:02) m4a1fox написал(а):
johniek_comp
Цитата
Мне страшно представить что с тобой было 27 сентября 2009 года

Я не помню sad.gif
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.