Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
C++. Мастер-класс в задачах и примерах. Авторы: Кузнецов М.В., Симдянов И.В. Социальная инженерия и социальные хакеры. Авторы: Кузнецов М.В., Симдянов И.В. Программирование. Ступени успешной карьеры. Авторы: Кузнецов М.В., Симдянов И.В. MySQL 5. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В. Самоучитель MySQL 5. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум MySQL

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: Вывод позиций из базы данных
 
 автор: uraltermo   (21.06.2008 в 09:37)   письмо автору
 
 

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


CREATE TABLE `system_catalog` (
`id_catalog` int(11) NOT NULL auto_increment,
`name` tinytext NOT NULL,
`gost` varchar(30) default NULL,
`zamenit` text,
`naznach` text,
`vidpost` text,
`keywords` tinytext,
`modrewrite` tinytext,
`pos` int(11) NOT NULL default '0',
`hide` enum('show','hide') NOT NULL default 'show',
`id_parent` int(11) NOT NULL default '0',
PRIMARY KEY (`id_catalog`)
) ENGINE=MyISAM DEFAULT CHARSET=cp1251 AUTO_INCREMENT=88 ;

CREATE TABLE `system_position` (
`id_position` int(11) NOT NULL auto_increment,
`marka` tinytext character set cp1251,
`lang` tinytext character set cp1251,
`ves` tinytext character set cp1251,
`price` tinytext character set cp1251,
`keywords` tinytext character set cp1251,
`hide` enum('show','hide') collate cp1251_bin default 'show',
`pos` int(11) NOT NULL default '0',
`id_catalog` int(11) default '0',
PRIMARY KEY (`id_position`),
KEY `id_catalog` (`id_catalog`)
) ENGINE=InnoDB DEFAULT CHARSET=cp1251 COLLATE=cp1251_bin AUTO_INCREMENT=536 ;

пример
1. Нержавеющая сталь
т.е. id_catalog=1 id_parent=0
2. Инструментальная сталь
т.е. id_catalog=4 id_parent=0

3. id_catalog=44 id_parent=1
и т.д.

2 – таблица вывод позиций
мне нужно чтобы для клиента выводился как весь прайс – так и по отдельным маркам
пример
Нержавеющая сталь
Марка 1
Марка 1 – цена 1
Марка 1 – цена 2
Марка 1 – цена 3

Инструментальная сталь
Подшипниковая
Марка 1
Марка 1 – цена 1
Марка 1 – цена 2
Марка 1 – цена 3
Штамповая
Марка 1
Марка 1 – цена 1
Марка 1 – цена 2
Марка 1 – цена 3

Мой код
Переделан из книги по PHP
Практика создания WEB -сайтов

try
{
// Проверяем GET-параметры, предотвращая SQL-инъекцию
$_GET['id_catalog'] = intval($_GET['id_catalog']);
$_GET['page'] = intval($_GET['page']);

// Запрашиваем параметры текущего раздела
$query = "SELECT * FROM $tbl_cat_catalog
WHERE hide = 'show' AND
id_catalog = ".$_GET['id_catalog']."
ORDER BY pos";
$cat = mysql_query($query);
if(!$cat)
{
throw new ExceptionMySQL(mysql_error(),
$query,
"Ошибка при извлечении
параметров текущего раздела");
}
if(mysql_num_rows($cat))
{
$current = mysql_fetch_array($cat);
}
// Подключаем верхний шаблон
$pagename = "";
$keywords = "Каталог";

require_once ("templates/top.php");

// Заголовок страницы
echo title($pagename);


// Проверяем, нет ли подкаталогов, если есть - выводим
$query = "SELECT * FROM $tbl_cat_catalog
WHERE hide = 'show' AND
id_parent = ".$_GET['id_catalog']."
ORDER BY pos";
$cat = mysql_query($query);
if(!$cat)
{
throw new ExceptionMySQL(mysql_error(),
$query,
"Ошибка при извлечении
параметров текущего раздела");
}
if(mysql_num_rows($cat))
{
echo "<table cellspacing=\"1px\" cellpadding=\"1px\" class=\"content\">" .
"<tr>" .
"<td colspan=\"2\" height=\"25px\" class=\"menu\" align=\"center\" bgcolor=\"Maroon\">
".menu_navigation($_GET['id_catalog'], "", $tbl_cat_catalog)."</td>" .
"</tr>
<tr>
<td height=\"25px\" class=\"menu\" align=\"center\" bgcolor=\"Maroon\">Категория стали</td>" .
"<td height=\"25px\" class=\"menu\" align=\"center\" bgcolor=\"Maroon\">Просмотр</td>" .
"</tr>";

while($catalog = mysql_fetch_array($cat))
{
echo "<tr>
<td id=\"td_menu_r\" valign=\"middle\">$catalog[name]</td>
<td id=\"td_menu_r\" valign=\"middle\" align='center'>
<a href=catalog.php?id_catalog={$catalog[id_catalog]}>$img_pr</a></td>
</tr>";

}
echo "</table>
<br><a href='javascript:history.back();' class='adress'>Вернуться назад</a>";

}

if($_GET['id_catalog'] != 0)
{
// Подключаем список товарных позиций
require_once("catalog_position.php");
}

если не понятен мой вопрос зайдите на сайт который я делаю www.uraltermo.ru
Нужна ваша помощь можно платно, но хотелось бы самому додуматься совместно с продвинутыми программистами на PHP

Icq: 411377011

   
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования