• 15 апреля стартует «Курс «SQL-injection Master» ©» от команды The Codeby

    За 3 месяца вы пройдете путь от начальных навыков работы с SQL-запросами к базам данных до продвинутых техник. Научитесь находить уязвимости связанные с базами данных, и внедрять произвольный SQL-код в уязвимые приложения.

    На последнюю неделю приходится экзамен, где нужно будет показать свои навыки, взломав ряд уязвимых учебных сайтов, и добыть флаги. Успешно сдавшие экзамен получат сертификат.

    Запись на курс до 25 апреля. Получить промодоступ ...

Програмирование рубрикатора предприятий

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

azazazazazazazaz

Я создаю сайт / базу предприятий

У меня есть несколько вопросов которые очень плохо раскрыты на просторах инета.
Предлагаю те только ответить на мои вопросы но и расписать так чтобы и другие пользователи инета которых поисковые системы закинут на этот сайт смогли прочитать и понять как и что.
Это не только поможет кому то, но и повысит рейтинг форума.

Заранее благодарен за отсутствие лишних коментов не касающихся данной темы.


Рассмотрим следующую структуру сайта.

база mysql содержит список предприятий имея ячейку с номером рубрики и номером города.
.php файл который выводит список предприятий отсеивая их по городу и рубрике

А ВОТ ТЕПЕРЬ ТЕ ВОПРОСЫ КОТОРЫЕ У МЕНЯ ВОЗНИКЛИ:

1. Если в нужном для нас городе, в определенной рубрике отсутствует записи мы получаем ошибку.
(предполагаемый путь решения проблемы)
- проверяем на наличие записей по рубрике и городу, и считаем количество записей.
Если больше > 0 то по переходу выведем данные. Если меньше = <0 не пускаем по ссылке.

------------ Вопрос состоит как не пустить --------------
Вариант куска рубрикатора
HTML:
<p class="all">Рубрикатор направлений</p>
<div class="rubr">
<ol class="list">
<li><p class="head">Автомобили</p>
<div class="body">
<a href="#?pod_rubr=1">АЗС, топливо</a>
<a href="#?pod_rubr=2">Грузовые авто</a>
<a href="#?pod_rubr=3">Запчасти</a>
<a href="#?pod_rubr=4">Масла и автохимия</a>
<a href="#?pod_rubr=5">Продажа, дилеры, автосалоны</a>
<a href="#?pod_rubr=6">Ремонт и обслуживание</a>
<a href="#?pod_rubr=7">Специальная техника</a>
<a href="#?pod_rubr=8">Эвакуация</a>
<a href="#?pod_rubr=9">Мото- и велотранспорт</a></div></li>


Добавлено: Город мы передаем из файла в файл в переменной

HTML:
<a href="#?pod_rubr=1&gorod=<? print $gorod ?>">АЗС, топливо</a>
 
V

vital

Если в нужном для нас городе, в определенной рубрике отсутствует записи мы получаем ошибку.
Никакой ошибки. Вы просто получите 0 записей.
$result=mysql_query('SELECT * From table where gorod=1 and rubrika=2')
if (mysql_num_rows($result)<=0) echo 'Предприятий нет'
else
{
while (mysql_fetch_assoc($result))
{
..
}
}
а в чем проблема?
 
A

azazazazazazazaz

как не пустить пользователя по ссылке?

Есть желание заблокировать ссылку и оставить кликающего на пустой раздел в той же форме в которой он находится.

Как прописать отключение ссылки?
 
V

vital

А что мешает просто не показывать ссылки на пустые разделы?
 
1

1ive

Если всё-таки нужно выводить название города, то - проверяем количество записей кодом vital'а , а затем, если записей нет - выводим вместо:
HTML:
<a href="#?pod_rubr=2">Грузовые авто</a>
Вот это:
HTML:
<span>Грузовые авто</span>
Разве сложно?)


<div class="sp-wrap"><div class="sp-head-wrap"><div class="sp-head folded clickable">Может Говнокод, Но Для Наглядности</div></div><div class="sp-body"><div class="sp-content"> link removed
 
A

azazazazazazazaz

Заинтересовал вариант с не отображением рубрики если нету предприятий.
Но у меня очень сложный рубрикатор.
Рубрикатор имеет 27 рубрик и 210 подрубрик. Предприятия классифицируются по подрубрикам.
Вывод рубрикатора подразумевает отображение рубрик и при клике на рубрику слайдером с помощью js
выдвигаются под рубрики.
Вывод рубрикатора из бд слишком сложный и бессмысленный, поэтому он сделан в html-е.

Подскажите как сделать проверку о наличии предприятий в рубрике и при отсутствии не отобразить не нужную под рубрику.
И как сделать привязку одного предприятия к нескольким под рубрикам не дублируя его в бд.



HTML:
как сделать чтобы в переменной $mtp было значение дающее возможность не фильтровать, а выбрать все строки.
ну а если уже будет внесена переменная тогда пусть включается фильтр. 
$mtp = $myrow4['mtp']; 
if (!isset($mtp)) {$mtp = 5;}

$result = mysql_query ("SELECT * FROM user_pas WHERE id='$mtp'",$db);
 
A

azazazazazazazaz

С раскрытием рубрик проблем нету.

как сделать проверку о наличии предприятий в рубрике и при отсутствии не отобразить не нужную под рубрику.

И как сделать привязку одного предприятия к нескольким под рубрикам не дублируя его в бд.
 
V

vital

как сделать проверку о наличии предприятий в рубрике и при отсутствии не отобразить не нужную под рубрику.
аяксом, на онклик на раскрытие рубрики. Опять же, не вижу проблемы.
И как сделать привязку одного предприятия к нескольким под рубрикам не дублируя его в бд.
Cделать табличку в бд. ид|ид_категории|ид_предприятия в которой и хранить принадлежности, и когда надо вытягивать данные джоинами.
пс.
Может вам проще заплатить кому-то, кто умеет программировать?
 
A

azazazazazazazaz

Спасибо большое

Cделать табличку в бд. ид|ид_категории|ид_предприятия в которой и хранить принадлежности, и когда надо вытягивать данные джоинами.

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

И нужна на самом деле помощь не в написании за меня, а в дельном профессиональном совете.
Так как в литературе все рассмотрено косвенно на самых простых примерах, а более сложные примеры в корне не совпадают даже с самой идеей.

Поэтому если Вас не затруднит ответить на совсем не сложные вопросы которые могут попасться при веб программировании.
Буду очень признателен.

Если затруднит кого то встрять в эту дискуссию с дельными предложениями, то просто не засоряйте топик.
 
A

azazazazazazazaz

аяксом, на онклик на раскрытие рубрики. Опять же, не вижу проблемы.

если не затруднит подскажите код с помощью которого это можно сделать


проверка в дб и если нету записи не отображаем рубрику. php или js не имеет разницы
 
V

vital

PHP:
как сделать проверку о наличии предприятий в рубрике и при отсутствии не отобразить не нужную под рубрику.
уфф.. Там не три строчки, что бы вам код показать. За такое деньги платят. В общем виде как-то так..
$(див с рубрикой).click(

$.ajax(
делаем запрос, в котором выбираем из бд подрубрики и кол-во в них предприятий
)
потом
if (подрубрика1_количество_предприятий<=0)
{
$(ссылка_на_подрубрику).attr('visible','hidden')
}else $(ссылка_на_подрубрику).attr('visible','visible')
)
Только для каждой ссылки свой иф делать глупо. Лучше в цикле как-нить. Это тупо решение в лоб.
 
Мы в соцсетях:

Обучение наступательной кибербезопасности в игровой форме. Начать игру!