PHP для идиотов
→ проблема с выпадающими списками из запроса в таблицы • 28 января 2008 г. 10:28
PHP для идиотов
→ проблема с выпадающими списками из запроса в таблицы • 27 января 2008 г. 10:52
У меня вопрос, перерыл инфу по работе с выпадающими списками. В основном с использованием скриптов. В общем код такой:<?php // Устанавливаем соединение с базой данных require_once("config.php"); // Начало HTML-формы echo "<form method=post>"; // Формируем первый ...
У меня вопрос, перерыл инфу по работе с выпадающими списками. В основном с использованием скриптов. В общем код такой:
<?php
// Устанавливаем соединение с базой данных
require_once("config.php");
// Начало HTML-формы
echo "<form method=post>";
// Формируем первый выпадающий список
$query = "SELECT * FROM catalogs";
$cat = mysql_query($query);
if(!$cat) exit(mysql_error());
// Если имеется хотя бы одна запись
// формируем выпадающий список
if(mysql_num_rows($cat) > 0)
{
echo "<select name=id_catalog onchange='this.form.submit()'>";
echo "<option value=0>Не имеет значения</option>";
while($catalog = mysql_fetch_array($cat))
{
if($catalog['id_catalog'] == $catalog['id_catalog']) $selected = "selected";
else $selected = "";
echo "<option value=$catalog[id_catalog] $selected>$catalog[name]</option>";
}
echo "</select>";
}
// Проверяем является ли параметр id_catalog числом
if(preg_match("|^[\d]+$|",$_POST['id_catalog']));
{
// Формируем второй выпадающий список
$query = "SELECT * FROM products
WHERE id_catalog = $catalog[id_catalog]";
// ORDER BY name";
$prd = mysql_query($query);
if(!$prd) exit(mysql_error());
// Если в текущем каталоге имеется хотя бы
// одна товарная позиция формируем выпадающий список
if(mysql_num_rows($prd) > 0)
{
echo "<select name=id_product onchange='this.form.submit()'>";
while($product = mysql_fetch_array($prd))
{
echo "<option value=$product[id_product]>$product[name]</option>";
}
echo "</select>";
}
}
// Конец HTML-формы
echo "</form>";
?>