301

Re: Выпадающий список

Попробуйте добавить еще одно условие.

$aSQL[] = ' `md` = "' . $r['md'] . '" ';
$aSQL[] = ' `brand` = "' . $r['brand'] . '" ';

302

Re: Выпадающий список

добавил

function sub_func($r, $aSQL, $aName) {
    
    $aSQL[] = ' `md` = "' . $r['md'] . '" ';
$aSQL[] = ' `brand` = "' . $r['brand'] . '" ';
    global $db;
    $aSub = array();
    $aSQL[] = ' `md` = "' . $r['md'] . '" ';
    foreach ($aName as $checkbox) {
      if (isset($_POST[$checkbox])) {
        $aSub[] = ' SELECT * FROM `' . $checkbox . '`  WHERE ' . implode('AND', $aSQL);
      }
    }

  if (count($aSub) > 0) {
    $sql = '( ' . implode(' ) UNION ( ', $aSub) . ' ) GROUP BY `model` ';
  } else {
    
  }

ошибка

Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in

303

Re: Выпадающий список

может выложить дамп базы, может легче будет разобраться?

304

Re: Выпадающий список

Выведите запрос и попробуйте его в phpMyAdmin выполнить.
exit($sql);

305

Re: Выпадающий список

Здесь уберите, GROUP BY `model` не работает с UNION, я ошибся.
$sql = '( ' . implode(' ) UNION ( ', $aSub) . ' ) GROUP BY `model` ';

306 (изменено: павелsimon, 2012-04-23 18:12:45)

Re: Выпадающий список

Убрал вывелось все заглавия, а размеры не вывело
тоесть не цепляет функцию самую верхнюю

307 (изменено: павелsimon, 2012-04-23 18:16:33)

Re: Выпадающий список

Вот убрал в двух запросах

<?php

function sub_func($r, $aSQL, $aName) {
    
    
    global $db;
    
    $aSub = array();
    $aSQL[] = ' `md` = "' . $r['md'] . '" ';
    foreach ($aName as $checkbox) {
      if (isset($_POST[$checkbox])) {
        $aSub[] = ' SELECT * FROM `' . $checkbox . '`  WHERE ' . implode('AND', $aSQL);
      }
    }

  if (count($aSub) > 0) {
    $sql = '( ' . implode(' ) UNION ( ', $aSub) . ' ) ';
  } else {
    
  }
  
  if ($result = mysql_query($sql, $db)) {
    while ($row = mysql_fetch_array($result)) {
      if ($row["ostatok"] > 0) {
        print "<table width='900' border='1'>
          <tr>
                  
            <td width='100'>" . $row["shirina"] . "</td>
            <td width='100'>" . $row["profil"] . "</td>
            <td width='100'>" . $row["diametr"] . "</td>
            <td width='100'>" . $row["indnag"] . "</td>
            <td width='150'>" . $row["indskor"] . "</td>
            <td width='150'>" . $row["ostatok"] . "</td>
            <td width='100'>" . $row["model"] . "</td>
            <td width='100'>hhh" . $row["id"] . "</td>
             <td width='100'>" . ($row["ostatok"] * $row["cena"]) . "</td>
             <td >mmm" . $r["md"] . "</a></td>   
          </tr>
        </table>";
      } else {
        print '';
      }
    }
  }
}

echo '<form method="post" action="">';
$auto = "<p>Ширина <select  name='nazv_auto' size='1'  selected='selected' onchange=\"this.form.submit();\" >;
        <option value=''  >Все</option>";
          $query = mysql_query("SELECT * FROM auto ORDER BY id_auto  DESC");
        
              $result = mysql_fetch_array($query);
                do
                {
                    $auto .= "<option  value='".$result['nazv_auto']."'   "; /* то что передается  */
                    if (!empty($_POST['nazv_auto']) && $_POST['nazv_auto'] == $result['nazv_auto']) {
                     $auto .= ' selected="selected"';   
                    }
                    $auto .= ">".$result['nazv_auto']."</option>";  /* то что отобразится в списке  */
                }
               while($result = mysql_fetch_array($query));
$auto.= "</select>";
echo $auto."";
 {

     
     $model = "<p>Профиль <select  name='nazv_model' size='1'onchange=\"this.form.submit();\" >;
                <option value=''>Все</option>";
      $query = mysql_query("SELECT * FROM automodel
WHERE id_auto = '" . addslashes($_POST['nazv_auto']) . "' ORDER BY id_model "); /* здесь нужно принять номер названия тоесть id_auto  */
                $result = mysql_fetch_array($query);
                 do
                {
                    $model .= "<option value='".$result['nazv_model']."'";
                    if (!empty($_POST['nazv_model']) && $_POST['nazv_model'] == $result['nazv_model']) {
                        $model .= ' selected="selected"';
                    }
                    $model .= ">".$result['nazv_model']."</option>";
                }
                while($result = mysql_fetch_array($query));
$model .= "</select>";
echo $model.""."";
}
{

 $year = "<p>Диаметр <select nazv_year name='nazv_year' size='1' onchange=\"this.form.submit();\" >;
                <option value=''>Все</option>";
                $query = mysql_query("SELECT  nazv_year FROM year
WHERE id_model='" . addslashes($_POST['nazv_model']) . "' and id_year='" . addslashes($_POST['nazv_auto']) . "'  ORDER BY id_year ");
                $result = mysql_fetch_array($query);
                 do
                {
                    $year .= "<option value='".$result['nazv_year']."'";
                    if (!empty($_POST['nazv_year']) && $_POST['nazv_year'] == $result['nazv_year']) {
                        $year .= ' selected="selected"';
                    }
                    $year .= ">".$result['nazv_year']."</option>";
                }
                while($result = mysql_fetch_array($query));
$year .= "</select>";
echo $year.""."";




 $sezon = "<p>Сезонность <select  name='nazv_sezon' size='1'  onchange=\"this.form.submit();\" >;
                
                <option value=''>Все</option>";
                $query = mysql_query("SELECT  nazv_sezon FROM sezon ");
                $result = mysql_fetch_array($query);
                 do
                {
                    $sezon .= "<option value='".$result['nazv_sezon']."'";
                    if (!empty($_POST['nazv_sezon']) && $_POST['nazv_sezon'] == $result['nazv_sezon']) {
                        $sezon .= ' selected="selected"';
                    }
                    $sezon .= ">".$result['nazv_sezon']."</option>";
                }
                while($result = mysql_fetch_array($query));
$sezon .= "</select>";
echo $sezon.""."";

}
 {
}  
if (isset($_POST['achilles'])) {
  echo '<p> ТАБЛИЦА 1 <input type="checkbox" checked="checked" name="achilles" value="" >';
} else {
  echo '<p> ТАБЛИЦА 1 <input type="checkbox" name="achilles" value="" >';
}

if (isset($_POST['amtel'])) {
  echo '<p> amtel <input type="checkbox" checked="checked" name="amtel" value="" >';
} else {
  echo '<p> amtel <input type="checkbox" name="amtel" value="" >';
}

if (isset($_POST['autoguard'])) {
  echo '<p> таблица 3 <input type="checkbox" checked="checked" name="autoguard" value="" >';
} else {
  echo '<p> таблица 3 <input type="checkbox" name="autoguard" value="" >';
}
if (isset($_POST['gislaved'])) {
  echo '<p> gislaved<input type="checkbox" checked="checked" name="gislaved" value="" >';
} else {
  echo '<p> gislaved 3 <input type="checkbox" name="gislaved" value="" >';
}
 /* echo ' <input type="submit" name="button" value="Поехали">'; */

echo "</form>";

$aName = array('nazv_auto' => 'shirina', 'nazv_model' => 'profil', 'nazv_year' => 'diametr', 'nazv_sezon' => 'sezon');
// Теперь создаем пустой массив для хранения данных формирующих запрос (имя поля = значение).
$aSQL = array();
// Проходим цикл ассоциативного массива имен и добавляем элемент в массив $aSQL, если список выбран.
foreach ($aName as $select => $field) {
  if (!empty($_POST[$select])) $aSQL[] = ' `' . $field . '` = "' . mysql_real_escape_string($_POST[$select]) . '" ';
}

$aName = array('achilles','amtel','autoguard','gislaved','barum');
$aUnion = array();
foreach ($aName as $checkbox) {
  if (isset($_POST[$checkbox])) {
    $aUnion[] = ' SELECT * FROM `' . $checkbox . '`  WHERE ' . implode('AND', $aSQL);
  }
}

if (count($aUnion) > 0) {
    $sql = '( ' . implode(' ) UNION ( ', $aUnion) . ' )';
} else {
    $sql = 'SELECT * FROM `barum` GROUP BY `model`';
}

$result = mysql_query($sql);
while ($row = mysql_fetch_array($result)) {
    printf("<table width='900' border='1'>
      <tr>
        <td colspan='9'>  Шины %s ...  Модель %s</td>
      </tr>
      <tr>
        <td colspan='2'>фото</td>
        <td colspan='7' rowspan='2'>текст</td>
      </tr>
      <tr>
        <td>%s</td>
        <td>md=%s</td>
      </tr>
      <tr>
        <td  width='100'>Ширина</td>
        <td width='100'>Профиль</td>
        <td width='100'>Диаметр</td>
        <td width='150'>Инд.нагр</td>
        <td width='150'>Инд.скор</td>
        <td width='100'>Остаток</td>
        <td width='100'></td>
        <td width='100'></td>
        <td>%s1119999</td>
      </tr>
    </table>",$row["brand"], $row["model"], $row["sezon"], $row["md"] , $row["md"]);
    sub_func($row, $aSQL, $aName, $aUnion);
    echo ('<br>');
}

?>

но теперь выводит тоже что и тогда в одно заглавие строки из разных таблиц

Вот оно добавил ваше условие

$aSQL[] = ' `md` = "' . $r['md'] . '" ';
$aSQL[] = ' `brand` = "' . $r['brand'] . '" ';

теперь выводит нормально,  спасибо!!!

308

Re: Выпадающий список

Опять не то если убрать

 GROUP BY `model`

то будут выводится дубликаты

function sub_func($r, $aSQL, $aName) {
    
    $aSQL[] = ' `md` = "' . $r['md'] . '" ';
$aSQL[] = ' `brand` = "' . $r['brand'] . '" ';
    global $db;
    
    $aSub = array();
    $aSQL[] = ' `md` = "' . $r['md'] . '" ';
    foreach ($aName as $checkbox) {
      if (isset($_POST[$checkbox])) {
        $aSub[] = ' SELECT * FROM `' . $checkbox . '`  WHERE ' . implode('AND', $aSQL);
      }
    }

  if (count($aSub) > 0) {
    $sql = '( ' . implode(' ) UNION ( ', $aSub) . ' ) ';
  } else {
    
  }

309

Re: Выпадающий список

А другим способом убрать дубликаты возможно?

310

Re: Выпадающий список

Добавьте здесь:
$aSub[] = ' SELECT * FROM `' . $checkbox . '`  WHERE ' . implode('AND', $aSQL) . ' GROUP BY `model` ';

И обратите внимание, что дублируется строка:
$aSQL[] = ' `md` = "' . $r['md'] . '" ';

311

Re: Выпадающий список

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

if (count($aUnion) > 0) {
    $sql = '( ' . implode(' ) UNION ( ', $aUnion) . ' ) ';

   а строку

$aSQL[] = ' `md` = "' . $r['md'] . '" ';

не нужно дублировать?

312

Re: Выпадающий список

Пробуйте заменить эту строку.
$aUnion[] = ' SELECT * FROM `' . $checkbox . '`  WHERE ' . implode('AND', $aSQL);
На эту:
$aUnion[] = ' SELECT * FROM `' . $checkbox . '`  WHERE ' . implode('AND', $aSQL) . ' GROUP BY `model` ';

313

Re: Выпадающий список

в таком случяэ из одной модели с одинаковыми строчками размера выводится только одна строчка

314

Re: Выпадающий список

какша какаято, какже с етими запросами разобраться?

315

Re: Выпадающий список

павелsimon сказал:

в таком случяэ из одной модели с одинаковыми строчками размера выводится только одна строчка

Я не понимаю без примера.

316 (изменено: павелsimon, 2012-04-23 21:53:57)

Re: Выпадающий список

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

<?php

function sub_func($r, $aSQL, $aName) {
    
    

    $aSQL[] = ' `md` = "' . $r['md'] . '" ';
$aSQL[] = ' `brand` = "' . $r['brand'] . '" ';
    global $db;
    $aSub = array();
    $aSQL[] = ' `md` = "' . $r['md'] . '" ';
    foreach ($aName as $checkbox) {
      if (isset($_POST[$checkbox])) {
       $aSub[] = ' SELECT * FROM `' . $checkbox . '`  WHERE ' . implode('AND', $aSQL) ;
      }
    }

  if (count($aSub) > 0) {
    $sql = '( ' . implode(' ) UNION ( ', $aSub) . ' )  ';
  } else {
    
  }
  
  if ($result = mysql_query($sql, $db)) {
    while ($row = mysql_fetch_array($result)) {
      if ($row["ostatok"] > 0) {
        print "<table width='900' border='1'>
          <tr>
                  
            <td width='100'>" . $row["shirina"] . "</td>
            <td width='100'>" . $row["profil"] . "</td>
            <td width='100'>" . $row["diametr"] . "</td>
            <td width='100'>" . $row["indnag"] . "</td>
            <td width='150'>" . $row["indskor"] . "</td>
            <td width='150'>" . $row["ostatok"] . "</td>
            <td width='100'>" . $row["model"] . "</td>
            <td width='100'>hhh" . $row["id"] . "</td>
             <td width='100'>" . ($row["ostatok"] * $row["cena"]) . "</td>
             <td >mmm" . $r["md"] . "</a></td>   
          </tr>
        </table>";
      } else {
        print '';
      }
    }
  }
}

echo '<form method="post" action="">';
$auto = "<p>Ширина <select  name='nazv_auto' size='1'  selected='selected' onchange=\"this.form.submit();\" >;
        <option value=''  >Все</option>";
          $query = mysql_query("SELECT * FROM auto ORDER BY id_auto  DESC");
        
              $result = mysql_fetch_array($query);
                do
                {
                    $auto .= "<option  value='".$result['nazv_auto']."'   "; /* то что передается  */
                    if (!empty($_POST['nazv_auto']) && $_POST['nazv_auto'] == $result['nazv_auto']) {
                     $auto .= ' selected="selected"';   
                    }
                    $auto .= ">".$result['nazv_auto']."</option>";  /* то что отобразится в списке  */
                }
               while($result = mysql_fetch_array($query));
$auto.= "</select>";
echo $auto."";
 {

     
     $model = "<p>Профиль <select  name='nazv_model' size='1'onchange=\"this.form.submit();\" >;
                <option value=''>Все</option>";
      $query = mysql_query("SELECT * FROM automodel
WHERE id_auto = '" . addslashes($_POST['nazv_auto']) . "' ORDER BY id_model "); /* здесь нужно принять номер названия тоесть id_auto  */
                $result = mysql_fetch_array($query);
                 do
                {
                    $model .= "<option value='".$result['nazv_model']."'";
                    if (!empty($_POST['nazv_model']) && $_POST['nazv_model'] == $result['nazv_model']) {
                        $model .= ' selected="selected"';
                    }
                    $model .= ">".$result['nazv_model']."</option>";
                }
                while($result = mysql_fetch_array($query));
$model .= "</select>";
echo $model.""."";
}
{

 $year = "<p>Диаметр <select nazv_year name='nazv_year' size='1' onchange=\"this.form.submit();\" >;
                <option value=''>Все</option>";
                $query = mysql_query("SELECT  nazv_year FROM year
WHERE id_model='" . addslashes($_POST['nazv_model']) . "' and id_year='" . addslashes($_POST['nazv_auto']) . "'  ORDER BY id_year ");
                $result = mysql_fetch_array($query);
                 do
                {
                    $year .= "<option value='".$result['nazv_year']."'";
                    if (!empty($_POST['nazv_year']) && $_POST['nazv_year'] == $result['nazv_year']) {
                        $year .= ' selected="selected"';
                    }
                    $year .= ">".$result['nazv_year']."</option>";
                }
                while($result = mysql_fetch_array($query));
$year .= "</select>";
echo $year.""."";




 $sezon = "<p>Сезонность <select  name='nazv_sezon' size='1'  onchange=\"this.form.submit();\" >;
                
                <option value=''>Все</option>";
                $query = mysql_query("SELECT  nazv_sezon FROM sezon ");
                $result = mysql_fetch_array($query);
                 do
                {
                    $sezon .= "<option value='".$result['nazv_sezon']."'";
                    if (!empty($_POST['nazv_sezon']) && $_POST['nazv_sezon'] == $result['nazv_sezon']) {
                        $sezon .= ' selected="selected"';
                    }
                    $sezon .= ">".$result['nazv_sezon']."</option>";
                }
                while($result = mysql_fetch_array($query));
$sezon .= "</select>";
echo $sezon.""."";

}
 {
}  
if (isset($_POST['achilles'])) {
  echo '<p>achilles<input type="checkbox" checked="checked" name="achilles" value="" >';
} else {
  echo '<p>achilles<input type="checkbox" name="achilles" value="" >';
}

if (isset($_POST['amtel'])) {
  echo '<p> amtel <input type="checkbox" checked="checked" name="amtel" value="" >';
} else {
  echo '<p> amtel <input type="checkbox" name="amtel" value="" >';
}

if (isset($_POST['autoguard'])) {
  echo '<p>autoguard<input type="checkbox" checked="checked" name="autoguard" value="" >';
} else {
  echo '<p>autoguard<input type="checkbox" name="autoguard" value="" >';
}
if (isset($_POST['gislaved'])) {
  echo '<p> gislaved<input type="checkbox" checked="checked" name="gislaved" value="" >';
} else {
  echo '<p> gislaved<input type="checkbox" name="gislaved" value="" >';
}

if (isset($_POST['barum'])) {
  echo '<p> barum<input type="checkbox" checked="checked" name="barum" value="" >';
} else {
  echo '<p>barum<input type="checkbox" name="barum" value="" >';
}if (isset($_POST['bf_goodrich'])) {
  echo '<p>bf_goodrich<input type="checkbox" checked="checked" name="bf_goodrich" value="" >';
} else {
  echo '<p>bf_goodrich<input type="checkbox" name="bf_goodrich" value="" >';
}if (isset($_POST['goodyear'])) {
  echo '<p>goodyear<input type="checkbox" checked="checked" name="goodyear" value="" >';
} else {
  echo '<p>goodyear<input type="checkbox" name="goodyear" value="" >';
}if (isset($_POST['nokian'])) {
  echo '<p>nokian<input type="checkbox" checked="checked" name="nokian" value="" >';
} else {
  echo '<p>nokian<input type="checkbox" name="nokian" value="" >';
}if (isset($_POST['gislaved'])) {
  echo '<p>falken<input type="checkbox" checked="checked" name="falken" value="" >';
} else {
  echo '<p>falken<input type="checkbox" name="falken" value="" >';
}
if (isset($_POST['hercules'])) {
  echo '<p>hercules<input type="checkbox" checked="checked" name="hercules" value="" >';
} else {
  echo '<p>hercules<input type="checkbox" name="hercules" value="" >';
}





echo "</form>";

$aName = array('nazv_auto' => 'shirina', 'nazv_model' => 'profil', 'nazv_year' => 'diametr', 'nazv_sezon' => 'sezon');
// Теперь создаем пустой массив для хранения данных формирующих запрос (имя поля = значение).
$aSQL = array();
// Проходим цикл ассоциативного массива имен и добавляем элемент в массив $aSQL, если список выбран.
foreach ($aName as $select => $field) {
  if (!empty($_POST[$select])) $aSQL[] = ' `' . $field . '` = "' . mysql_real_escape_string($_POST[$select]) . '" ';
}

$aName = array('achilles','amtel','autoguard','gislaved','barum','bf_goodrich','falken','nokian','goodyear','hercules');
$aUnion = array();
foreach ($aName as $checkbox) {
  if (isset($_POST[$checkbox])) {
    $aUnion[] = ' SELECT * FROM `' . $checkbox . '`  WHERE ' . implode('AND', $aSQL) . ' GROUP BY `model` ';
  }
}

if (count($aUnion) > 0) {
    $sql = '( ' . implode(' ) UNION ( ', $aUnion) . ' ) ';
} else {
    $sql = 'SELECT * FROM `barum` GROUP BY `model`';
}

$result = mysql_query($sql);
while ($row = mysql_fetch_array($result)) {
    printf("<table width='900' border='1'>
      <tr>
        <td colspan='9'>  Шины %s ...  Модель %s</td>
      </tr>
      <tr>
        <td colspan='2'>фото</td>
        <td colspan='7' rowspan='2'>текст</td>
      </tr>
      <tr>
        <td>%s</td>
        <td>md=%s</td>
      </tr>
      <tr>
        <td  width='100'>Ширина</td>
        <td width='100'>Профиль</td>
        <td width='100'>Диаметр</td>
        <td width='150'>Инд.нагр</td>
        <td width='150'>Инд.скор</td>
        <td width='100'>Остаток</td>
        <td width='100'></td>
        <td width='100'></td>
        <td>%s1119999</td>
      </tr>
    </table>",$row["brand"], $row["model"], $row["sezon"], $row["md"] , $row["md"]);
    sub_func($row, $aSQL, $aName, $aUnion);
    echo ('<br>');
}

?>

сейчяс если не выбрана ниодна галочка выводит ошибку

Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in Z:\home\localhost\www\autoshina\index2.php on line 217

317

Re: Выпадающий список

ТОесть где мне прописать такое условие если не выбран ниодин чекбокс и ничего из выпадающих списков то пусть выводится все таблицы из бази?

318

Re: Выпадающий список

if (count($aSub) > 0) {
    $sql = '( ' . implode(' ) UNION ( ', $aSub) . ' )  ';
  } else {
    // Здесь
  }

319

Re: Выпадающий список

Да я понял что там, я сам синтаксис не напишу там ведь не только через юниан вы мне напишите 2 таблицы через юнион если можно чтоб я увидел как пишется правильно

320

Re: Выпадающий список

Даже наверное не так нужно начинать, ведь у меня в выпадающих списках кроме цифр по которым формируется зпрос есть параметр (ВСЕ), и под него тоже нужно условие
1. условие если в чекбоксах ничего не нажато и в списках ничего не выбрано то выводить все слитые таблицы
2. условие если выбраны один или несколько чекбоксов и в списках выбран параметр (Все) то соответственно выводить по тем таблица что выбраны все параметры.
Сейчяс у меня получяется вывести по тем таблицам что выбраны лиш по цыфрам в выпадающих списках

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

321

Re: Выпадающий список

Доброе утро пробую написать запос, если не выбран ниодин из чекбоксов то выводить все записи из таблиц. Но выдает ошибку

function sub_func($r, $aSQL, $aName) {
    
    

    $aSQL[] = ' `md` = "' . $r['md'] . '" ';
$aSQL[] = ' `brand` = "' . $r['brand'] . '" ';
    global $db;
    $aSub = array();
    $aSQL[] = ' `md` = "' . $r['md'] . '" ';
    foreach ($aName as $checkbox) {
      if (isset($_POST[$checkbox])) {
       $aSub[] = ' SELECT * FROM `' . $checkbox . '`  WHERE ' . implode('AND', $aSQL) ;
      }
    }

  if (count($aSub) > 0) {
    $sql = '( ' . implode(' ) UNION ( ', $aSub) . ' )  ';
  } else {
  $sql = '(
    SELECT * FROM `bf_goodrich`  WHERE ' . implode('AND', $aSQL) . '
  ) UNION (
    SELECT * FROM `barum`  WHERE ' . implode('AND', $aSQL) . '
  )';
  }
Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in 

Где у меня ошибка?

322

Re: Выпадающий список

павелsimon сказал:

Где у меня ошибка?

Я не вижу ошибки.

323

Re: Выпадающий список

 if (count($aSub) > 0) {
    $sql = '( ' . implode(' ) UNION ( ', $aSub) . ' )  ';
  } else {
  $sql = '(
    SELECT * FROM `bf_goodrich`  WHERE ' . implode('AND', $aSQL) . '
  ) UNION (
    SELECT * FROM `barum`  WHERE ' . implode('AND', $aSQL) . '
  )';
  }

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

324

Re: Выпадающий список

Попробуйте так.

  $sql = '(
    SELECT * FROM `bf_goodrich` WHERE `md` = "' . $r['md'] . '"
  ) UNION (
    SELECT * FROM `barum` WHERE `md` = "' . $r['md'] . '"
  )';

325

Re: Выпадающий список

если ничего не выбрано в чекбоксах и выбрано или не выбрано в списках то при

function sub_func($r, $aSQL, $aName) {
    
    

    $aSQL[] = ' `md` = "' . $r['md'] . '" ';
$aSQL[] = ' `brand` = "' . $r['brand'] . '" ';
    global $db;
    $aSub = array();
    $aSQL[] = ' `md` = "' . $r['md'] . '" ';
    foreach ($aName as $checkbox) {
      if (isset($_POST[$checkbox])) {
       $aSub[] = ' SELECT * FROM `' . $checkbox . '`  WHERE ' . implode('AND', $aSQL) ;
      }
    }

  if (count($aSub) > 0) {
    $sql = '( ' . implode(' ) UNION ( ', $aSub) . ' )  ';
  } else {
 $sql = '(
    SELECT * FROM `bf_goodrich` WHERE `md` = "' . $r['md'] . '"
  ) UNION (
    SELECT * FROM `barum` WHERE `md` = "' . $r['md'] . '"
  )';
  }

Вывелась одна таблица оглавления без данных и без строк под нею