Re: Выпадающий список
Пока не получяется с сами запросами ошибок много. Подскажите с простым вариантом без чекбоксов, код только со списками, у меня не получяется сформировать запрос тоесть на два условия если выбран параметр в списке то вывести только с одной таблицы, с етим нормально но если не выбран ни один параметр из списка то вывести все параметры из всех таблиц,
function sub_func($r, $aSQL) {
global $db; // Эта строка необходима.
$aSQL[] = ' `md` = "' . $r['md'] . '" '; // Добавляем условие выборки.
if (count($aSub) > 0) {
$sql = '( ' . implode(' ) UNION ( ', $aSub) . ' ) ';
} else {
$sql = '(
SELECT * FROM `achilles` WHERE ' . implode('AND', $aSQL) . '
)
UNION (
SELECT * FROM `aeolus` WHERE ' . implode('AND', $aSQL) . '
)
UNION (
SELECT * FROM `amtel` WHERE ' . implode('AND', $aSQL) . '
)
UNION (
SELECT * FROM `autoguard` 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 "<table width='700' class='smaltable'>
<tr>
<td width='70' align='center'><font color= '#1A7EDF'>" . $row["shirina"] . "</font></td>
<td width='80' align='center'><font color= '#1A7EDF'>" . $row["profil"] . "</font></td>
<td width='80' align='center'><font color= '#1A7EDF'>" . $row["diametr"] . "</font></td>
<td width='120' align='center'><font color= '#1A7EDF'>" . $row["indnag"] . "</font></td>
<td width='100' align='center'><font color= '#1A7EDF'>" . $row["indskor"] . "</font></td>
<td width='70' align='center'><font color= '#1A7EDF'>" . $row["ostatok"] . "</font></td>
<td width='100' align='center'><font color= '#FF0000'>" . $row["cena"] . "</font></td>
<td align='center'><font color= '#1A7EDF'>Заказать</font></td>
</tr>
</table>";
} else {
print '';
}
}
}
}
/* <td width='100'>hhh" . $row["id"] . "</td>
<td width='100'>" . ($row["ostatok"] * $row["cena"]) . "</td>
<td >" . $r["md"] . "</a></td> */
include ("blocks/spisok.php");
$aName = array('nazv_auto' => 'shirina', 'nazv_model' => 'profil', 'nazv_year' => 'diametr', 'nazv_sezon' => 'sezon', '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 `barum` GROUP BY `model`
) ';
} else { // Если в массиве ничего нет, значит ни один список из массива $aName не выбран и формируем запрос выбирающий все данные, например.
$sql = '(
SELECT * FROM `achilles` WHERE ' . implode('AND', $aSQL) . '
)
UNION (
SELECT * FROM `aeolus` WHERE ' . implode('AND', $aSQL) . '
)
UNION (
SELECT * FROM `amtel` WHERE ' . implode('AND', $aSQL) . '
)
UNION (
SELECT * FROM `autoguard` 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 Z:\home\localhost\www\autoshina\index.php on line 142