Форум программистов
 
Контакты: о проблемах с регистрацией, почтой и по другим вопросам пишите сюда - alarforum@yandex.ru, проверяйте папку спам! Обязательно пройдите активизацию e-mail.

Вернуться   Форум программистов > Скриптовые языки программирования > PHP
Регистрация

Восстановить пароль
Повторная активизация e-mail

Ответ
 
Опции темы
Старый 10.07.2018, 19:44   #1
spoon100500
Форумчанин
 
Аватар для spoon100500
 
Регистрация: 14.10.2016
Сообщений: 262
Репутация: -23
По умолчанию Подскажите с индуским кодом)

День добрый, долго думал описывать задачу или нет, решил просто выложить весь ИНДУСКИЙ код который сделал т.к. больше запутаю чем что то объясню).
Если кратко то задача такова: есть таблица БД из которой выбираем ткани в зависимости от светопропускания и цвета ткани.
Если выбрали свет 50% то выгружаем ткани со светом 50% и фильтруем их по цвету, если выбрали свет 100% то выгружаем ткани мо светом 100% и так же фильтруем их по цвету. Вроде ни чего сложного, но если учитывать состояния чеков false или true, когда оба нажаты, когда нажат один и т.д. и т.п.
Задачу вроде решил но код огромный, может циклами можно или ещё какие предложения будут0
PHP код:
//Выбираем Пластиковые
if ($plast[1] == 'vide6=true' && $catpieces[0]==""){$rol 'WHERE categoria="1"'; include 'tkani/vertical_tkani.php';}

if (
$plast[1] == 'vide6=true'){
if (
$catpieces[0] == 'ver-1=true'){$rol 'WHERE categoria="1" AND color="0"'; include 'tkani/vertical_tkani.php';}
if (
$catpieces[1] == 'ver-2=true'){$rol 'WHERE categoria="1" AND color="1"'; include 'tkani/vertical_tkani.php';}
if (
$catpieces[2] == 'ver-3=true'){$rol 'WHERE categoria="1" AND color="2"'; include 'tkani/vertical_tkani.php';}
if (
$catpieces[3] == 'ver-4=true'){$rol 'WHERE categoria="1" AND color="3"'; include 'tkani/vertical_tkani.php';}
if (
$catpieces[4] == 'ver-5=true'){$rol 'WHERE categoria="1" AND color="4"'; include 'tkani/vertical_tkani.php';}
if (
$catpieces[5] == 'ver-6=true'){$rol 'WHERE categoria="1" AND color="5"'; include 'tkani/vertical_tkani.php';}
if (
$catpieces[6] == 'ver-7=true'){$rol 'WHERE categoria="1" AND color="10"'; include 'tkani/vertical_tkani.php';}
if (
$catpieces[7] == 'ver-8=true'){$rol 'WHERE categoria="1" AND color="7"'; include 'tkani/vertical_tkani.php';}
if (
$catpieces[8] == 'ver-9=true'){$rol 'WHERE categoria="1" AND color="8"'; include 'tkani/vertical_tkani.php';}
if (
$catpieces[9] == 'ver-10=true'){$rol 'WHERE categoria="1" AND color="9"'; include 'tkani/vertical_tkani.php';}}

if(
$plast[1] == 'vide6=true'){
if (
$catpieces[0] == 'ver-1=false' && $catpieces[1] == 'ver-2=false' && $catpieces[2] == 'ver-3=false' && $catpieces[3] == 'ver-4=false' &&
$catpieces[4] == 'ver-5=false' && $catpieces[5] == 'ver-6=false' && $catpieces[6] == 'ver-7=false' && $catpieces[7] == 'ver-8=false' &&
$catpieces[8] == 'ver-9=false' && $catpieces[9] == 'ver-10=false'){$rol 'WHERE categoria="1"'; include 'tkani/vertical_tkani.php';}}    

//Выбираем Тканиевые
if ($plast[0] == 'vide5=true' && $catpieces[0]=="" && $transparency[0] == ""){$rol 'WHERE categoria = "0"'; include 'tkani/vertical_tkani.php';}

//Выбираем Цвет BO
if ($plast[0] == 'vide5=true' && $transparency[1] == 'plast_bo=true'){
if (
$catpieces[0] == 'ver-1=true'){$rol 'WHERE svet = "1" AND color="0"'; include 'tkani/vertical_tkani.php';}
if (
$catpieces[1] == 'ver-2=true'){$rol 'WHERE svet = "1" AND color="1"'; include 'tkani/vertical_tkani.php';}
if (
$catpieces[2] == 'ver-3=true'){$rol 'WHERE svet = "1" AND color="2"'; include 'tkani/vertical_tkani.php';}
if (
$catpieces[3] == 'ver-4=true'){$rol 'WHERE svet = "1" AND color="3"'; include 'tkani/vertical_tkani.php';}
if (
$catpieces[4] == 'ver-5=true'){$rol 'WHERE svet = "1" AND color="4"'; include 'tkani/vertical_tkani.php';}
if (
$catpieces[5] == 'ver-6=true'){$rol 'WHERE svet = "1" AND color="5"'; include 'tkani/vertical_tkani.php';}
if (
$catpieces[6] == 'ver-7=true'){$rol 'WHERE svet = "1" AND color="6"'; include 'tkani/vertical_tkani.php';}
if (
$catpieces[7] == 'ver-8=true'){$rol 'WHERE svet = "1" AND color="10"'; include 'tkani/vertical_tkani.php';}
if (
$catpieces[8] == 'ver-9=true'){$rol 'WHERE svet = "1" AND color="8"'; include 'tkani/vertical_tkani.php';}}

if (
$transparency[1] == 'plast_bo=true'){
if (
$catpieces[0] == 'ver-1=false' && $catpieces[1] == 'ver-2=false' && $catpieces[2] == 'ver-3=false' && $catpieces[3] == 'ver-4=false' &&
$catpieces[4] == 'ver-5=false' && $catpieces[5] == 'ver-6=false' && $catpieces[6] == 'ver-7=false' && $catpieces[7] == 'ver-8=false' &&
$catpieces[8] == 'ver-9=false' && $catpieces[9] == 'ver-10=false')
{
$rol 'WHERE svet = "1"'; include 'tkani/vertical_tkani.php';}}

//Выбираем Цвет тканиевых
if ($plast[0] == 'vide5=true' && $transparency[0] == 'plast=true'){
if (
$catpieces[0] == 'ver-1=true'){$rol 'WHERE svet = "0" AND color="0"'; include 'tkani/vertical_tkani.php';}
if (
$catpieces[1] == 'ver-2=true'){$rol 'WHERE svet = "0" AND color="1"'; include 'tkani/vertical_tkani.php';}
if (
$catpieces[2] == 'ver-3=true'){$rol 'WHERE svet = "0" AND color="2"'; include 'tkani/vertical_tkani.php';}
if (
$catpieces[3] == 'ver-4=true'){$rol 'WHERE svet = "0" AND color="3"'; include 'tkani/vertical_tkani.php';}
if (
$catpieces[4] == 'ver-5=true'){$rol 'WHERE svet = "0" AND color="4"'; include 'tkani/vertical_tkani.php';}
if (
$catpieces[5] == 'ver-6=true'){$rol 'WHERE svet = "0" AND color="5"'; include 'tkani/vertical_tkani.php';}
if (
$catpieces[6] == 'ver-7=true'){$rol 'WHERE svet = "0" AND color="10"'; include 'tkani/vertical_tkani.php';}
if (
$catpieces[7] == 'ver-8=true'){$rol 'WHERE svet = "0" AND color="7"'; include 'tkani/vertical_tkani.php';}
if (
$catpieces[8] == 'ver-9=true'){$rol 'WHERE svet = "0" AND color="8"'; include 'tkani/vertical_tkani.php';}
if (
$catpieces[9] == 'ver-10=true'){$rol 'WHERE svet = "0" AND color="9"'; include 'tkani/vertical_tkani.php';}}

if (
$plast[0] == 'vide5=true' && $transparency[0] == 'plast=true'){
if (
$catpieces[0] == 'ver-1=false' && $catpieces[1] == 'ver-2=false' && $catpieces[2] == 'ver-3=false' && $catpieces[3] == 'ver-4=false' &&
$catpieces[4] == 'ver-5=false' && $catpieces[5] == 'ver-6=false' && $catpieces[6] == 'ver-7=false' && $catpieces[7] == 'ver-8=false' &&
$catpieces[8] == 'ver-9=false' && $catpieces[9] == 'ver-10=false')
{
$rol 'WHERE svet = "0"'; include 'tkani/vertical_tkani.php';}}

//выбираем цвет если не выбрана прозрачность т.е. всех тканиевых ламелей
if($plast[0] == 'vide5=true' && $transparency[0] == 'plast=false' && $transparency[1] == 'plast_bo=false' && $catpieces[0] !=''){
if (
$catpieces[0] == 'ver-1=true'){$rol 'WHERE categoria="0" AND color="0"'; include 'tkani/vertical_tkani.php';}
if (
$catpieces[1] == 'ver-2=true'){$rol 'WHERE categoria="0" AND color="1"'; include 'tkani/vertical_tkani.php';}
if (
$catpieces[2] == 'ver-3=true'){$rol 'WHERE categoria="0" AND color="2"'; include 'tkani/vertical_tkani.php';}
if (
$catpieces[3] == 'ver-4=true'){$rol 'WHERE categoria="0" AND color="3"'; include 'tkani/vertical_tkani.php';}
if (
$catpieces[4] == 'ver-5=true'){$rol 'WHERE categoria="0" AND color="4"'; include 'tkani/vertical_tkani.php';}
if (
$catpieces[5] == 'ver-6=true'){$rol 'WHERE categoria="0" AND color="5"'; include 'tkani/vertical_tkani.php';}
if (
$catpieces[6] == 'ver-7=true'){$rol 'WHERE categoria="0" AND color="10"'; include 'tkani/vertical_tkani.php';}
if (
$catpieces[7] == 'ver-8=true'){$rol 'WHERE categoria="0" AND color="7"'; include 'tkani/vertical_tkani.php';}
if (
$catpieces[8] == 'ver-9=true'){$rol 'WHERE categoria="0" AND color="8"'; include 'tkani/vertical_tkani.php';}
if (
$catpieces[9] == 'ver-10=true'){$rol 'WHERE categoria="0" AND color="9"'; include 'tkani/vertical_tkani.php';}}    

if(
$plast[0] == 'vide5=true' && $transparency[0] == 'plast=false' && $transparency[1] == 'plast_bo=false' && $catpieces[0] !=''){
if (
$catpieces[0] == 'ver-1=false' && $catpieces[1] == 'ver-2=false' && $catpieces[2] == 'ver-3=false' && $catpieces[3] == 'ver-4=false' &&
$catpieces[4] == 'ver-5=false' && $catpieces[5] == 'ver-6=false' && $catpieces[6] == 'ver-7=false' && $catpieces[7] == 'ver-8=false' &&
$catpieces[8] == 'ver-9=false' && $catpieces[9] == 'ver-10=false'){$rol 'WHERE categoria="0"'; include 'tkani/vertical_tkani.php';}} 
__________________
Еду медленно, но верно!
spoon100500 вне форума   Ответить с цитированием
Старый 10.07.2018, 19:45   #2
spoon100500
Форумчанин
 
Аватар для spoon100500
 
Регистрация: 14.10.2016
Сообщений: 262
Репутация: -23
По умолчанию

Продолжение
PHP код:
//Прозрачность Вертикалок
if ($plast[0] == 'vide5=true'){
if (
$transparency[0] == 'plast=true' && $catpieces[0] ==''){$rol 'WHERE svet = "0"'; include 'tkani/vertical_tkani.php';}
if (
$transparency[1] == 'plast_bo=true' && $catpieces[0] ==''){$rol 'WHERE svet = "1"'; include 'tkani/vertical_tkani.php';}    
if(
$transparency[0] == 'plast=false' && $transparency[1] == 'plast_bo=false' && $catpieces[0] ==''){$rol 'WHERE categoria="0"'; include 'tkani/vertical_tkani.php';}} 
Сама разметка
PHP код:
echo'
<form name="filter_ver" class="row">
<div id ="transparency" class="col-6 text-center border-primary" style="border-right: 2px solid;">
    <h1 class="h5 font-weight-bold font-italic pb-2">Прозрачность</h1>
    <input id="plast" name="a" type="checkbox">
    <label for="plast" name="active">
    <img class="pro prop" src="/imagesbd/fon50.png" data-toggle="tooltip" data-html="true" data-title="<img src=\'/imagesbd/fon50.png\'/>">
    <p>Свет 50%</p>
    </label>
    <input id="plast_bo" name="b" type="checkbox">
    <label for="plast_bo" name="active" class="pl-4 mt-2">
    <img class="pro prop" src="/imagesbd/fon100.png" data-toggle="tooltip" data-html="true" data-title="<img src=\'/imagesbd/fon100.png\'/>">
    <p>Black-Out 100%</p>
    </label>
</div>
<div id="color" class="col-6 text-center">
<h1 class="h5 font-weight-bold font-italic pt-2">Цвет материала</h1>

  <input type="checkbox" name="cat" id="ver-1">
  <label for="ver-1"><p>красный</p></label>
  
  <input type="checkbox" name="cat" id="ver-2">
  <label for="ver-2"><p>оранжевый</p></label>

  <input type="checkbox" name="cat" id="ver-3">
  <label for="ver-3"><p>желтый</p></label>
  
  <input type="checkbox" name="cat" id="ver-4">
  <label for="ver-4"><p>зеленый</p></label>
  
  <input type="checkbox" name="cat" id="ver-5">
  <label for="ver-5"><p>синий</p></label>
  
  <input type="checkbox" name="cat" id="ver-6">
  <label for="ver-6"><p>сиреневый</p></label>
  
  <input type="checkbox" name="cat" id="ver-7">
  <label for="ver-7"><p>коричневый</p></label>
  
  <input type="checkbox" name="cat" id="ver-8">
  <label for="ver-8"><p>белый</p></label>

  <input type="checkbox" name="cat" id="ver-9">
  <label for="ver-9"><p>бежевый</p></label>
  
  <input type="checkbox" name="cat" id="ver-10">
  <label for="ver-10"><p>серый</p></label>
</div>
</form>'

__________________
Еду медленно, но верно!
spoon100500 вне форума   Ответить с цитированием
Старый 12.07.2018, 12:40   #3
Baburek
Форумчанин
 
Аватар для Baburek
 
Регистрация: 12.12.2010
Сообщений: 198
Репутация: 25
По умолчанию

Боже, как мне это развидеть.


Цитата:
Сообщение от spoon100500 Посмотреть сообщение
ИНДУСКИЙ код
Вы не обижайтесь, но этот код краба, а не человека. Что вы творите то? Вы не можете свой color прокинуть один раз и не копировать эту строчку over 9000 раз?

Код:

'WHERE categoria="n" AND color="x"'

И в каком случае вы не делаете этот include? Может стоит успокоиться и все же сделать его один раз?

Код:

include 'tkani/vertical_tkani.php'


Последний раз редактировалось Baburek; 12.07.2018 в 12:44.
Baburek на форуме   Ответить с цитированием
Старый 12.07.2018, 13:06   #4
spoon100500
Форумчанин
 
Аватар для spoon100500
 
Регистрация: 14.10.2016
Сообщений: 262
Репутация: -23
По умолчанию

Цитата:
Сообщение от Baburek Посмотреть сообщение
Вы не обижайтесь, но этот код краба, а не человека
Соглашусь
__________________
Еду медленно, но верно!
spoon100500 вне форума   Ответить с цитированием
Старый 12.07.2018, 13:48   #5
spoon100500
Форумчанин
 
Аватар для spoon100500
 
Регистрация: 14.10.2016
Сообщений: 262
Репутация: -23
По умолчанию

Цитата:
Сообщение от Baburek Посмотреть сообщение
Вы не можете свой color прокинуть один раз и не копировать эту строчку over 9000 раз?
Смысл не изменится, ну заменю я строчку
Код:

$rol = 'WHERE categoria="1" AND color="0"';

на
Код:

$n=1; $x=0;

как не крути масштаб не измениться
Код:

if ($plast[1] == 'vide6=true'){
if ($catpieces[0] == 'ver-1=true'){$n=1; $x=0; include 'tkani/vertical_tkani.php';}
if ($catpieces[1] == 'ver-2=true'){$n=1; $x=1; include 'tkani/vertical_tkani.php';}
if ($catpieces[2] == 'ver-3=true'){$n=1; $x=2; include 'tkani/vertical_tkani.php';}}

__________________
Еду медленно, но верно!
spoon100500 вне форума   Ответить с цитированием
Старый 12.07.2018, 14:54   #6
Serge_Bliznykov
МегаМодератор
СуперМодератор
 
Регистрация: 09.01.2008
Сообщений: 23,899
Репутация: 5228
По умолчанию

Цитата:
Сообщение от spoon100500 Посмотреть сообщение
как не крути масштаб не измениться
потому как это бред полнейший.

начиная с того, что Вы выбрали чекбоксы для выбора цвета.
и что должно быть, если пользователь отметил "птичкой", скажем,
"красный" цвет, "желтый" цвет и "синий".
Какие цвета должны выбраться из БД ?

и заканчивая тем, что все выбранные критерии должны сразу сформировать Вам набор нужных условий, которые и нужно выбирать из БД.
ну, например, цвета - сразу в разметке указывайте нужный код
Код:

<input type="checkbox" name="cat[]" value="Тут_Код_Цвета_из_БД">

и всё. больше ничего не надо.
Serge_Bliznykov на форуме   Ответить с цитированием
Старый 12.07.2018, 15:20   #7
spoon100500
Форумчанин
 
Аватар для spoon100500
 
Регистрация: 14.10.2016
Сообщений: 262
Репутация: -23
По умолчанию

Т.е. в обработчик отправляем name и value?
Или только name?
__________________
Еду медленно, но верно!
spoon100500 вне форума   Ответить с цитированием
Старый 12.07.2018, 15:22   #8
Serge_Bliznykov
МегаМодератор
СуперМодератор
 
Регистрация: 09.01.2008
Сообщений: 23,899
Репутация: 5228
По умолчанию

Цитата:
Сообщение от spoon100500 Посмотреть сообщение
Т.е. в обработчик отправляем name и value?
точно. при этом обратите внимание, что имя с квадратными скобками.
это позволит получить массив значений.
потом этот массив в PHP обрабатываем в цикле, формируем нужный запрос.
всё просто, надёжно и прозрачно.
Serge_Bliznykov на форуме   Ответить с цитированием
Старый 12.07.2018, 15:25   #9
spoon100500
Форумчанин
 
Аватар для spoon100500
 
Регистрация: 14.10.2016
Сообщений: 262
Репутация: -23
По умолчанию

Спасибо, буду пробовать, а то накатал километр ненужного кода, капец
__________________
Еду медленно, но верно!
spoon100500 вне форума   Ответить с цитированием
Старый 12.07.2018, 15:25   #10
Serge_Bliznykov
МегаМодератор
СуперМодератор
 
Регистрация: 09.01.2008
Сообщений: 23,899
Репутация: 5228
По умолчанию

Цитата:
Сообщение от spoon100500 Посмотреть сообщение
Спасибо, буду пробовать
ага. успехов!
Serge_Bliznykov на форуме   Ответить с цитированием
Ответ

Опции темы

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Подскажите с кодом, плиз! spoon100500 JavaScript, Ajax 25 16.10.2016 15:27
подскажите с кодом: Напишите программу, принимающую на вход текстовый CSV-файл с таблицей и преобразующую эту таблицу в XML формат dima4239 Паскаль 20 01.10.2015 14:20
. Подскажите пожалуйста как исправить ошибку с кодом 18. abatfarda PHP 18 30.03.2015 01:04
Подскажите, что не так с кодом Grisha248 Помощь студентам 2 24.05.2009 16:41
Подскажите с кодом процедуры ButtonClick KARUSHEV Помощь студентам 3 23.03.2009 15:01


12:02.


Powered by vBulletin® Version 3.8.8 Beta 2
Copyright ©2000 - 2018, Jelsoft Enterprises Ltd.

RusProfile.ru


Справочник российских юридических лиц и организаций.
Проекты отопления, пеллетные котлы, бойлеры, радиаторы
интернет магазин respective.ru