Кто мне может помочь со структурой дерева?Структура каталога бирётся из БД.Я написал вот что в коде PHP: <?php switch ($_GET[mod]) { default: print "<div align=\"center\"><b>НАСТРОЙКИ</b></div>"; print_form_sysvals ("SHOP"); break; case "razmest": print "<div align='center'><b>Добавление товара на Торговую площадку</b></div><br />"; print"<div align='center'><font color='#FF3333'><b>Выбрать категорию товара</b></font></div>"; echo "<table>"; $r=mysql_query("SELECT * FROM ".$plgtables['t_cat_tovar']." WHERE cat='0' AND tip='1' AND status='1' ORDER BY id ASC"); $num=mysql_num_rows($r); for($i=0;$i<$num;$i++) { $category1=mysql_fetch_assoc($r); echo"<tr><td>"; if ($category1['id']==$cat1) { echo"<img border='0' src='../mag-wm/img/minus.gif'><img border='0' src='../mag-wm/img/open.gif'> <b>".$category1['name']."</b>"; } else { echo"<img border='0' src='../mag-wm/img/plus.gif' style=\"cursor:pointer\" onClick=\"location.href='$PHP_SELF?mod=".$_GET['mod']."&cat1=".$category1['id']."'\"><img border='0' src='../mag-wm/img/closed.gif'><font style=\"color:#3333CC; font-weight:bolder\">".$category1['name']."</font>"; } echo"</td></tr>"; if ($category1['id']==$cat1) { $r1=mysql_query("SELECT * FROM ".$plgtables['t_cat_tovar']." WHERE cat='$cat1' AND tip='2' AND status='1' ORDER BY id ASC"); $num1=mysql_num_rows($r1); for($i1=0;$i1<$num1;$i1++) { $category2=@mysql_fetch_assoc($r1); echo"<tr><td>"; if ($category2['id']==$cat2) { echo" <img border='0' src='../mag-wm/img/minus.gif'><img border='0' src='../mag-wm/img/open.gif'> <b>".$category2['name']."</b>"; } else { echo"<img border='0' src='../mag-wm/img/plus.gif' style=\"cursor:pointer\" onClick=\"location.href='$PHP_SELF?mod=$_GET[mod]&cat1=$cat1&cat2=$category2[id]'\"><img border='0' src='../mag-wm/img/closed.gif'> ".$category2['name']."</a>"; } echo"</td></tr>"; if ($category2['id']==$cat2) { $r2=@mysql_result("SELECT * FROM `".$plgtables['t_cat_tovar']."` WHERE `cat`='$cat2' AND `tip`='3' AND `status`='1' ORDER BY `id` ASC"); $num2=mysql_num_rows($r2); for($i2=0;$i2<$num2;$i2++) { $category3=@mysql_fetch_assoc($r2); echo"<tr><td>"; if ($category3['id']==$cat3) { echo" <img border='0' src='../mag-wm/img/doc_sel.gif'> <b>".$category3['name']."</b> <font color='#C0C0C0'>-OK Категория выбрана процент системе ".$get_sysval['shop_adminproc']."</font>"; } else { echo" <a href='$PHP_SELF?mod=$_GET[mod]&cat1=".$cat1."&cat2=".$cat2."&cat3=".$category3['id']."'><img border='0' src='../mag-wm/img/doc.gif'> ".$category3['name']."</a>"; } echo"</td></tr>"; } } } } } echo"<form name='$PHP_SELF' method='post' action='$PHP_SELF?mod=$_GET[mod]=info_form' onSubmit='return ValidateForm(this)'> <input type='hidden' name='cat_id' value='$cat3'> <tr><td><br><center><input type='submit' name='register' value='Далее'></td></tr> </form> <script language='JavaScript'> function ValidateForm(frm) { if (frm.cat_id.value==\"\") { alert(\"Категория товара не выбрана!\"); return false; } } </script>\n"; echo"</table>"; break; } print "</center>"; Первая часть каталога читается из БД а вот вторая часть при открывание каталого те подкатегории не читает выводит мне начальный каталог и всё.Кто мне может подскажит в чём ошибка моя?И буду благодарен кто мне хотябы пример кинет каталога товаров на мыло niko-loskutov@yandex.ru.Заранее буду благодарен Вам.Так помогите мне ра зобраться с написание м каталога товаров в древовидном виде,т.е. как в проводнике Windows.
боюсь, с такой кашей никто не поможет… http://sourceforge.net/projects/phpcatalog/ http://phpclub.ru/detail/article/db_tree
Помогите написать категорию товаров в древовидном виде.Чтоб товары можно разместить в категорию.Но перед размещением товаров сначало должно идти выбор категории товара затем добавление товара уже в выбранную категорию.Как например на тоговой площадке http://www.paywm.ru/ .И это я вам в...жит разобраться с каталогом найти ошибки мои.
еслиб вы привели свой код к такому(читаемому) виду: PHP: <? //комментарий if(){ //комментарий if(){ //комментарий } } else { //комментарий <table> <tr> <td> </td> </tr> </table> } ?> то нашли бы ошибку сами, возможно даже кто то бы и помог... но это же просто не реально... почему у вас print и echo перемешаны?
Но если вот эта часть кода читается из БД PHP: <?php $r=mysql_query("SELECT * FROM ".$plgtables['t_cat_tovar']." WHERE cat='0' AND tip='1' AND status='1' ORDER BY id ASC"); $num=mysql_num_rows($r); for($i=0;$i<$num;$i++) { $category1=mysql_fetch_assoc($r); echo"<tr><td>"; if ($category1['id']==$cat1) { echo"<img border='0' src='../mag-wm/img/minus.gif'><img border='0' src='../mag-wm/img/open.gif'> <b>".$category1['name']."</b>"; } else { echo"<img border='0' src='../mag-wm/img/plus.gif' style=\"cursor:pointer\" onClick=\"location.href='$PHP_SELF?mod=".$_GET['mod']."&cat1=".$category1['id']."'\"><img border='0' src='../mag-wm/img/closed.gif'><font style=\"color:#3333CC; font-weight:bolder\">".$category1['name']."</font>"; } echo"</td></tr>"; ?> А второе влозение каталога уже не читается БД Вот второе вложение которое должно было открыть подкаталог а он не открывает PHP: <?php if ($category1['id']==$cat1) { $r1=mysql_query("SELECT * FROM ".$plgtables['t_cat_tovar']." WHERE cat='$cat1' AND tip='2' AND status='1' ORDER BY id ASC"); $num1=mysql_num_rows($r1); for($i1=0;$i1<$num1;$i1++) { $category2=@mysql_fetch_assoc($r1); echo"<tr><td>"; if ($category2['id']==$cat2) { echo" <img border='0' src='../mag-wm/img/minus.gif'><img border='0' src='../mag-wm/img/open.gif'> <b>".$category2['name']."</b>"; } else { echo"<img border='0' src='../mag-wm/img/plus.gif' style=\"cursor:pointer\" onClick=\"location.href='$PHP_SELF?mod=$_GET[mod]&cat1=$cat1&cat2=$category2[id]'\"><img border='0' src='../mag-wm/img/closed.gif'> ".$category2['name']."</a>"; } echo"</td></tr>"; ?> почему и в чём ошибка?
и что, картинку показывает? что-то у вас совсем странно массив в строку добавляется. включите вывод ошибок! PHP: <?php error_reporting(E_ALL);?> в начало скрипта
Да каттинку показывает всё показывает весь начальный каталог а подкаталог уже не показывает выдаёт мне начальный каталог опять.Т.Е нажимаю на +Пинкоды должно открыться ещё подкаталог и стать -Пинкоды +Мегафон +Билайн Вот этого он вообще не открывает а ссылка вбраузере есть на этот каталог а он мне оставляет результат +Пинкоды
ДО PHP: <?php if ($category1['id']==$cat1) { $r1=mysql_query("SELECT * FROM ".$plgtables['t_cat_tovar']." WHERE cat='$cat1' AND tip='2' AND status='1' ORDER BY id ASC"); $num1=mysql_num_rows($r1); for($i1=0;$i1<$num1;$i1++) { $category2=@mysql_fetch_assoc($r1); echo"<tr><td>"; if ($category2['id']==$cat2) { echo" <img border='0' src='../mag-wm/img/minus.gif'><img border='0' src='../mag-wm/img/open.gif'> <b>".$category2['name']."</b>"; } else { echo"<img border='0' src='../mag-wm/img/plus.gif' style=\"cursor:pointer\" onClick=\"location.href='$PHP_SELF?mod=$_GET[mod]&cat1=$cat1&cat2=$category2[id]'\"><img border='0' src='../mag-wm/img/closed.gif'> ".$category2['name']."</a>"; } echo"</td></tr>"; ?> после PHP: <?php if ($category1['id']==$cat1) //проверяем условие { $r1=mysql_query("SELECT * FROM ".$plgtables['t_cat_tovar']." WHERE cat='$cat1' AND tip='2' AND status='1' ORDER BY id ASC"); //выполняем запрос, пока все верно $num1=mysql_num_rows($r1); for($i1=0;$i1<$num1;$i1++) //опять какое то условие { $category2=@mysql_fetch_assoc($r1); echo"<tr><td>"; if ($category2['id']==$cat2) { пусть будет условие 3 echo" <img border='0' src='../mag-wm/img/minus.gif'><img border='0' src='../mag-wm/img/open.gif'> <b>".$category2['name']."</b>"; //тут тоже все верно } //конец условия 3 else //если условие 3 неверно { echo"<img border='0' src='../mag-wm/img/plus.gif' style=\'cursor:pointer\' onClick=\'location.href='.$PHP_SELF?mod=$_GET[mod]&cat1=$cat1&cat2=$category2[id]'\"><img border='0' src='../mag-wm/img/closed.gif'> ".$category2['name']."</a>";//Вот здесь начинаются проблеммы в ссылке ооочено много непонятных переменных в сочетании с символами равно и разделителями капайся исправляй. Дам подсказку использование двойных и одинарных кавычек в одной строке + отсутствие точек между переменными и кавычками. } //конец если условие неверно echo"</td></tr>"; // вдобавок скажу что не нашел закрывающие фигурные скобки первых двух условий... ?>
Да ссылки я исправлял.Ни открывается каталог как струтура дерева и всё.Может кто нибудь подскажит мне свой пимер открытие каталогов в ввиде дерева.Каталог должен использовать БД и написан на PHP.