xdoc
Новичок
выборка из бд по форме
Здрасти, есть некая таблица kino_all из которой нужно сделать выборку(сортировку) строк по жанру и год как написано в форме. То есть заполняю я форму с выпадающим списком нажимаю "показать" и он выводит мне все строки из таблицы, которые совпадают с выбраными мною даными. К примеру Жанр - боевик, Год-2010 и он выводит мне все строки из таблицы где есть такие совпадения.
Проблема заключается в том, что я незнаю как правильно оформить вот этот файл view.php, который служит обработчиком в форме. Нужно что бы он обрабавал форму, перезагружал страницу и выводил новые строки.
Постарался объяснить более подробно, помогите пожалуйста.
форма по которой будет задаваться значения:
<FORM action="view.php" method=post>
<b> Выбрать жанр</b>
<select name = "genre">
<option value = "">выбрать</option>
<option value = "1">боевик</option>
<option value = "2">комедия</option>
<option value = "3">триллер</option>
<option value = "4">фантастика</option>
<option value = "5">мелодрамма</option>
</select>
<b> Выбрать год</b>
<select name = "year">
<option value = "">выбрать</option>
<option value = "1">2010</option>
<option value = "2">2011</option>
<option value = "3">2010</option>
<option value = "4">2012</option>
<option value = "5">2011</option>
</select>
<INPUT type=submit name="показать" value=" показть ">
</FORM>
Вот таблица которая выводит строки в цикле.
[sql]
# phpMyAdmin SQL Dump
# version 2.5.6
# http://www.phpmyadmin.net
#
# Хост: localhost
# Время создания: Авг 17 2010 г., 12:30
# Версия сервера: 3.23.53
# Версия PHP: 4.3.6
#
# БД : `enjoybox`
#
# --------------------------------------------------------
#
# Структура таблицы `kino_all`
#
CREATE TABLE `kino_all` (
`id` int(10) NOT NULL AUTO_INCREMENT,
`meta_d` varchar(255) NOT NULL DEFAULT '',
`meta_k` varchar(255) NOT NULL DEFAULT '',
`title` text NOT NULL,
`genre` varchar(255) NOT NULL DEFAULT '',
`year` varchar(255) NOT NULL DEFAULT '',
`perevod` varchar(255) NOT NULL DEFAULT '',
`date_release` varchar(255) NOT NULL DEFAULT '',
`date_insert` varchar(255) NOT NULL DEFAULT '',
PRIMARY KEY (`id`)
) TYPE=MyISAM AUTO_INCREMENT=13 ;
#
# Дамп данных таблицы `kino_all`
#
INSERT INTO `kino_all` VALUES (1, '', '', '2012', 'боевик', '2010', 'Русский', '20.04.2006', '14.08.2010');
INSERT INTO `kino_all` VALUES (2, '', '', 'Солт', 'комедия', '2011', 'Английский', '10.12.2004', '14.08.2011');
INSERT INTO `kino_all` VALUES (3, '', '', 'Начало', 'фантастика', '2010', 'русский', '10.10.2010', '12.10.2013');
INSERT INTO `kino_all` VALUES (4, '', '', 'Первый фильм', 'фантастика', '2012', 'английсий', '12.10.2013', '12.10.2013');
INSERT INTO `kino_all` VALUES (5, '', '', 'Второй фильм', 'боевик', '2010', 'русский', '4.11.2013', '5.10.2013');
INSERT INTO `kino_all` VALUES (6, '', '', 'Третий фильм', 'триллер', '2010', 'русский', '9.10.2011', '12.10.2013');
INSERT INTO `kino_all` VALUES (7, '', '', 'Четвёртый фильм', 'меложрамма', '2010', 'анлийский', '12.10.2010', '12.10.2013');
INSERT INTO `kino_all` VALUES (8, '', '', 'Пятый фильм', 'комедия', '2011', 'русский', '12.4.2015', '12.10.2013');
INSERT INTO `kino_all` VALUES (9, '', '', 'Шестой фильм', 'боевик', '2013', 'анлийский', '3.10.2011', '12.10.2013');
INSERT INTO `kino_all` VALUES (10, '', '', 'Седьмой фильм', 'триллер', '2010', 'русский', '12.10.2013', '12.10.2013');
INSERT INTO `kino_all` VALUES (11, '', '', 'Восьмой фильм', 'фантастика', '2012', 'анлийский', '12.4.2014', '12.10.2013');
INSERT INTO `kino_all` VALUES (12, '', '', 'Девятый фильм', 'комедия', '2010', 'анлийский', '6.11.2012', '12.10.2013');
[/sql]
Здрасти, есть некая таблица kino_all из которой нужно сделать выборку(сортировку) строк по жанру и год как написано в форме. То есть заполняю я форму с выпадающим списком нажимаю "показать" и он выводит мне все строки из таблицы, которые совпадают с выбраными мною даными. К примеру Жанр - боевик, Год-2010 и он выводит мне все строки из таблицы где есть такие совпадения.
Проблема заключается в том, что я незнаю как правильно оформить вот этот файл view.php, который служит обработчиком в форме. Нужно что бы он обрабавал форму, перезагружал страницу и выводил новые строки.
Постарался объяснить более подробно, помогите пожалуйста.
форма по которой будет задаваться значения:
<FORM action="view.php" method=post>
<b> Выбрать жанр</b>
<select name = "genre">
<option value = "">выбрать</option>
<option value = "1">боевик</option>
<option value = "2">комедия</option>
<option value = "3">триллер</option>
<option value = "4">фантастика</option>
<option value = "5">мелодрамма</option>
</select>
<b> Выбрать год</b>
<select name = "year">
<option value = "">выбрать</option>
<option value = "1">2010</option>
<option value = "2">2011</option>
<option value = "3">2010</option>
<option value = "4">2012</option>
<option value = "5">2011</option>
</select>
<INPUT type=submit name="показать" value=" показть ">
</FORM>
Вот таблица которая выводит строки в цикле.
PHP:
<?php
$result = mysql_query ("SELECT * FROM kino_all ORDER BY id DESC", $db);
$myrow = mysql_fetch_array ($result);
do {
printf
("<tbody>
<tr style='height:26px;'>
<td style='padding:4px;' ><a href='viewt_kino.php?id=%s'><strong>%s</strong></a></td>
<td style='padding:4px;'>%s</td>
<td style='padding:4px;'>%s</td>
<td style='padding:4px;'>%s</td>
<td style='padding:4px;'>%s</td>
<td style='padding:4px;'>%s</td>
</tr>
</tbody> ",
$myrow["id"], $myrow["title"], $myrow["genre"], $myrow["year"], $myrow["perevod"], $myrow["date_release"], $myrow["date_insert"]);
}
while ($myrow = mysql_fetch_array ($result)) ;
?>
# phpMyAdmin SQL Dump
# version 2.5.6
# http://www.phpmyadmin.net
#
# Хост: localhost
# Время создания: Авг 17 2010 г., 12:30
# Версия сервера: 3.23.53
# Версия PHP: 4.3.6
#
# БД : `enjoybox`
#
# --------------------------------------------------------
#
# Структура таблицы `kino_all`
#
CREATE TABLE `kino_all` (
`id` int(10) NOT NULL AUTO_INCREMENT,
`meta_d` varchar(255) NOT NULL DEFAULT '',
`meta_k` varchar(255) NOT NULL DEFAULT '',
`title` text NOT NULL,
`genre` varchar(255) NOT NULL DEFAULT '',
`year` varchar(255) NOT NULL DEFAULT '',
`perevod` varchar(255) NOT NULL DEFAULT '',
`date_release` varchar(255) NOT NULL DEFAULT '',
`date_insert` varchar(255) NOT NULL DEFAULT '',
PRIMARY KEY (`id`)
) TYPE=MyISAM AUTO_INCREMENT=13 ;
#
# Дамп данных таблицы `kino_all`
#
INSERT INTO `kino_all` VALUES (1, '', '', '2012', 'боевик', '2010', 'Русский', '20.04.2006', '14.08.2010');
INSERT INTO `kino_all` VALUES (2, '', '', 'Солт', 'комедия', '2011', 'Английский', '10.12.2004', '14.08.2011');
INSERT INTO `kino_all` VALUES (3, '', '', 'Начало', 'фантастика', '2010', 'русский', '10.10.2010', '12.10.2013');
INSERT INTO `kino_all` VALUES (4, '', '', 'Первый фильм', 'фантастика', '2012', 'английсий', '12.10.2013', '12.10.2013');
INSERT INTO `kino_all` VALUES (5, '', '', 'Второй фильм', 'боевик', '2010', 'русский', '4.11.2013', '5.10.2013');
INSERT INTO `kino_all` VALUES (6, '', '', 'Третий фильм', 'триллер', '2010', 'русский', '9.10.2011', '12.10.2013');
INSERT INTO `kino_all` VALUES (7, '', '', 'Четвёртый фильм', 'меложрамма', '2010', 'анлийский', '12.10.2010', '12.10.2013');
INSERT INTO `kino_all` VALUES (8, '', '', 'Пятый фильм', 'комедия', '2011', 'русский', '12.4.2015', '12.10.2013');
INSERT INTO `kino_all` VALUES (9, '', '', 'Шестой фильм', 'боевик', '2013', 'анлийский', '3.10.2011', '12.10.2013');
INSERT INTO `kino_all` VALUES (10, '', '', 'Седьмой фильм', 'триллер', '2010', 'русский', '12.10.2013', '12.10.2013');
INSERT INTO `kino_all` VALUES (11, '', '', 'Восьмой фильм', 'фантастика', '2012', 'анлийский', '12.4.2014', '12.10.2013');
INSERT INTO `kino_all` VALUES (12, '', '', 'Девятый фильм', 'комедия', '2010', 'анлийский', '6.11.2012', '12.10.2013');
[/sql]