Доброе утро, возникла идея, в моем запросе к базе должно присутствовать множество таблиц с одинаковой структурой полей. И для єтого я обединял таблицы в запросе
SELECT * FROM `bf_goodrich` WHERE ' . implode('AND', $aSQL) . ' GROUP BY `model`
) UNION (
SELECT * FROM `barum` WHERE ' . implode('AND', $aSQL) . ' GROUP BY `model`
)';
а вот если не обединять ето все в запросе потому как таких таблиц может быть и сотня а сделать для каждой из них чекбокс со своим иминем и если у меня например три чекбокса отмечено то выбор происходит по трем таблицам , только я как всегда еще незнаю как правильно запрос с чекбоксами сформировать которые таблицы должны обозначать.
чекбоксы я доставил но как их с правильными параметрами в запрос вписать
<?php
function sub_func($r, $aSQL) {
global $db; // Эта строка необходима.
$aSQL[] = ' `md` = "' . $r['md'] . '" '; // Добавляем условие выборки.
$sql = '(
SELECT * FROM `bf_goodrich` WHERE ' . implode('AND', $aSQL) . '
) UNION (
SELECT * FROM `barum` WHERE ' . implode('AND', $aSQL) . '
)'; // Формируем запрос к БД.
if ($result = mysql_query($sql, $db)) {
while ($row = mysql_fetch_array($result)) {
if ($row["ostatok"] > 0) {
// Обратите внимание на то, что используется print, а не printf. Советую не использовать printf без надобности,
// а использовать конкатенацию, то есть объединение строки и переменной через точку.
print "<table width='900' border='1'>
<tr>
<td>таблица1111</td>
<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["cena"] . "</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.""."";
}
{
}
echo '<p> ТАБЛИЦА 1 <input type="checkbox" name="bf_goodrich" value="" >';
echo '<p> ТАБЛИЦА 2 <input type="checkbox" name="barum" value="" >';
echo '<p> таблица 3 <input type="checkbox" name="activan" 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]) . '" ';
}
// Если в массиве $aSQL есть хоть один элемент, то формируем запрос.
if (count($aSQL) > 0) {
$sql = '(
SELECT * FROM `bf_goodrich` WHERE ' . implode('AND', $aSQL) . ' GROUP BY `model`
) UNION (
SELECT * FROM `barum` WHERE ' . implode('AND', $aSQL) . ' GROUP BY `model`
)';
} else { // Если в массиве ничего нет, значит ни один список из массива $aName не выбран и формируем запрос выбирающий все данные, например.
$sql = 'SELECT * FROM `bf_goodrich` GROUP BY `model`';
}
$result = mysql_query($sql);
while ($row = mysql_fetch_array($result)){
printf("<table width='900' border='1'>
<tr>
<td colspan='9'> Шины ... Модель %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'>%s</td>
<td width='100'>%s</td>
<td width='100'>%s</td>
<td width='150'>Инд.нагр</td>
<td width='150'>Инд.скор</td>
<td width='100'>Остаток</td>
<td width='100'></td>
<td width='100'></td>
<td>%s</td>
</tr>
</table>",$row["model"], $row["sezon"], $row["md"] , $row["shirina"], $row["profil"], $row["diametr"], $row["md"]);
sub_func($row, $aSQL);
echo ('<br>');
}
?>