|
|
|
| Помогите найти ошибку в коде:
Нужно вывести название нескольких категорий:
if (!$cafe['cuisine']) $cuisine_list = "не известно"; else {
$cuisine_list = array ();
$cat_list = explode (',', $cafe['cuisine']);
foreach ($cat_list as $element) {
if ($element) $cuisine_list[] = $cuisine[$cafe['cuisine']]['title'];
}
$cuisine_list = implode (', ', $cuisine_list);
}
|
Спасибо. | |
|
|
|
|
|
|
|
для: kis-kis
(18.10.2007 в 21:14)
| | не в тот форум запостил? | |
|
|
|
|
|
|
|
для: kis-kis
(18.10.2007 в 21:14)
| | А в чём выражается ошибка? | |
|
|
|
|
|
|
|
для: cheops
(19.10.2007 в 12:15)
| |
CREATE TABLE `cuisine` (
`id` int(11) NOT NULL auto_increment,
`title` varchar(50) NOT NULL default '',
PRIMARY KEY (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=cp1251 AUTO_INCREMENT=33 ;
--
-- Дамп данных таблицы `cuisine`
--
INSERT INTO `cuisine` (`id`, `title`) VALUES (1, 'Домашняя');
INSERT INTO `cuisine` (`id`, `title`) VALUES (2, 'Морская');
INSERT INTO `cuisine` (`id`, `title`) VALUES (3, 'Австралийская');
INSERT INTO `cuisine` (`id`, `title`) VALUES (4, 'Немецкая');
INSERT INTO `cuisine` (`id`, `title`) VALUES (5, 'Авторская');
INSERT INTO `cuisine` (`id`, `title`) VALUES (6, 'Европейская');
INSERT INTO `cuisine` (`id`, `title`) VALUES (7, 'Американская');
INSERT INTO `cuisine` (`id`, `title`) VALUES (8, 'Индийская');
INSERT INTO `cuisine` (`id`, `title`) VALUES (9, 'Русская');
INSERT INTO `cuisine` (`id`, `title`) VALUES (10, 'Английская');
|
CREATE TABLE `cafe` (
`id` int(11) NOT NULL auto_increment,
`category` varchar(100) NOT NULL default '0',
`cuisine` varchar(100) NOT NULL default '0',
`title` varchar(200) NOT NULL default '',
`work_time` varchar(100) NOT NULL default '',
`inform` text NOT NULL,
`address` varchar(200) NOT NULL default '',
`tel` varchar(100) NOT NULL default '',
`www` varchar(50) NOT NULL default '',
PRIMARY KEY (`id`),
KEY `cuisine` (`cuisine`),
KEY `category` (`category`)
) ENGINE=MyISAM DEFAULT CHARSET=cp1251 AUTO_INCREMENT=2 ;
--
-- Дамп данных таблицы `cafe`
--
INSERT INTO `cafe` (`id`, `category`, `cuisine`, `title`, `work_time`, `inform`, `address`, `tel`, `www`) VALUES (1, '2,3', '2,6,8', 'Дети солнца', '09.00-01.00', 'Информация', 'ул. Интернациональная, 26', '72-75-72', '');
|
| |
|
|
|
|
|
|
|
для: kis-kis
(19.10.2007 в 12:19)
| | Нужно вывести виды кухни, которая есть в кафе - cuisine. Их 2, как вывести их через запятую?
Спасибо. | |
|
|
|
|
|
|
|
для: kis-kis
(19.10.2007 в 12:20)
| | Во первых следует поместить выражение
<?php
...
while($cafe = mysql_fetch_array($caf))
{
...
}
...
?>
|
в цикл. | |
|
|
|
|
|
|
|
для: cheops
(19.10.2007 в 14:15)
| | Вот запрос:
$query_cuisine = "SELECT * FROM cuisine WHERE id='$cafe[cuisine]'";
$result_cuisine=mysql_query($query_cuisine) or die("<B>Error ".mysql_errno()." :</B> ".mysql_error()."");
while($cuisine = mysql_fetch_array($result_cuisine))
{
if (!$cafe['cuisine']) $cuisine_list = "не известно"; else {
$cuisine_list = array ();
$cat_list = explode (',', $cafe['cuisine']);
foreach ($cat_list as $element) {
if ($element) $cuisine_list[] = $cuisine[$cafe['cuisine']]['title'];
}
$cuisine_list = implode (', ', $cuisine_list);
}
echo "".$cuisine_list."";
}
|
Выводит только запятые, без названия вида | |
|
|
|