Есть база данных в Mysql.В ней три таблицы.Разделы-part,категории-catigories и все фильмы-content(здесь все фильмы драмы ,комедии и т.д.).Подскажите пожалуйста как правильно сделать запрос что бы выводились фильмы определенной категории.Например по жанру . Например я хочу вывести только драмы (в таблице категорий id=11).В таблице сонтента есть строка категорий catid.
У меня запрос прописан так:
<?php
define("HOST","localhost");
define("USER","root");
define("PASS","");
define("DB","lama");
$link = mysql_connect(HOST,USER,PASS) or die (mysql_error());
mysql_select_db(DB, $link);
mysql_query ("SET NAMES utf8");
mysql_query ("set character_set_client='utf8'");
mysql_query ("set character_set_results='utf8'");
mysql_query ("set collation_connection='utf8_general_ci'");
$sql = "SELECT * FROM `drama` order by `id` desc LIMIT 1, 10";
$result = mysql_query($sql) or die(mysql_error() ."<br/>". $sql);
Спустя 3 минуты, 15 секунд (18.03.2011 - 23:30) datvid написал(а):
Мне посоветовали применить для вывода катигории catid=11 следующий код:
Где его можно прописать и как? Подскажите пожалуйста!
SELECT * FROM content WHERE catid=11?
Где его можно прописать и как? Подскажите пожалуйста!
Спустя 1 час, 28 минут, 16 секунд (19.03.2011 - 00:58) datvid написал(а):
И еще вопрос :
У меня в mysql имеется таблица данных в которой содержаться база онлайн фильмов.
Фильм может относиться одновременно к разным жанрам(в моем случае к разным категориям)
например одновременно боевик,ужас,драма.Можно ли прописать в одной строке сразу 2 категории.Например в таблице есть строка сatid(категория)Как можно в ней прописать
несколько значений.Например 1,3,12.Если нельзя хотя бы подскажите как можно создать дупликат уже внесенной в таблицу статьи(фильма)Заранее благодарю за помощь.
У меня в mysql имеется таблица данных в которой содержаться база онлайн фильмов.
Фильм может относиться одновременно к разным жанрам(в моем случае к разным категориям)
например одновременно боевик,ужас,драма.Можно ли прописать в одной строке сразу 2 категории.Например в таблице есть строка сatid(категория)Как можно в ней прописать
несколько значений.Например 1,3,12.Если нельзя хотя бы подскажите как можно создать дупликат уже внесенной в таблицу статьи(фильма)Заранее благодарю за помощь.
Спустя 7 часов, 41 минута, 33 секунды (19.03.2011 - 08:40) inpost написал(а):
datvid
Внутри запроса прописать условие по WHERE.
Внутри запроса прописать условие по WHERE.
Спустя 2 часа, 8 минут, 3 секунды (19.03.2011 - 10:48) datvid написал(а):
Спасибо за ответ!!! На счет WHERE мне уже подсказали ...Вы не поможете со вторым вопросом?
Можно ли в таблице баз данных где перечислены фильмы прописать к одному фильму в строчке категорий прописать два или более значений...В моем случае категория это catid(INT)
Можно ли в таблице баз данных где перечислены фильмы прописать к одному фильму в строчке категорий прописать два или более значений...В моем случае категория это catid(INT)
Спустя 1 час, 4 минуты, 7 секунд (19.03.2011 - 11:52) Trianon написал(а):
Тот, кто придумывал описанную структуру хранения, и кто поставил в таблицу контента поле catid , очевидно, не рассчитывал, что фильм можно будет приписывать более чем к одной категории.
Иначе бы он не стал вносить это поле в эту таблицу, а создал отдельную таблицу-связку с полями (id_content, id_cat) в которую по одной добавлял бы записи, показывающие причастность некоего фильма к некоей категории.
По одной для каждого случая такой причастности.
Записывать же два значения в одно поле идеологически неправильно.
Находить в этом поле значения станет крайне затруднительно.
Иначе бы он не стал вносить это поле в эту таблицу, а создал отдельную таблицу-связку с полями (id_content, id_cat) в которую по одной добавлял бы записи, показывающие причастность некоего фильма к некоей категории.
По одной для каждого случая такой причастности.
Записывать же два значения в одно поле идеологически неправильно.
Находить в этом поле значения станет крайне затруднительно.
Спустя 4 часа, 57 минут, 20 секунд (19.03.2011 - 16:49) datvid написал(а):
Вы правы!!!! Это точно ,я когда создавал данную таблицу не подумал что фильм может быть и боевиком,комедией и драмой одновременно!!А вот теперь все заново переделать уже сложно мне!!!Хотя фильмов я записал пока не много !
Спустя 10 минут, 39 секунд (19.03.2011 - 17:00) datvid написал(а):
А вы не могли бы немножко подробнее объяснить на счет новой таблицы!
Я то поле catid уберу из таблицы контента,ето не проблема...!
Я то поле catid уберу из таблицы контента,ето не проблема...!
Спустя 3 часа, 4 минуты, 43 секунды (19.03.2011 - 20:04) datvid написал(а):
Я поступил как Вы мне подсказали и создал дополнительную таблицу связи content_catigories
c двумя полями 1-ое поле id_content и второе поле id_catigories. id_content содержит id фильмов из таблицы content,а id_catigories порядковые номера жанров из таблицы catigories.
У меня до этого в файле conect_db было прописано как указано ниже и все нормально работало.Сейчас я проэкспериментировал с новой таблицей и ни чего не получаеться,
Привожу connect_db файл который был раньше при нормальной работе!!!
как мне добавить здесь код с новой таблицей?
c двумя полями 1-ое поле id_content и второе поле id_catigories. id_content содержит id фильмов из таблицы content,а id_catigories порядковые номера жанров из таблицы catigories.
У меня до этого в файле conect_db было прописано как указано ниже и все нормально работало.Сейчас я проэкспериментировал с новой таблицей и ни чего не получаеться,
Привожу connect_db файл который был раньше при нормальной работе!!!
<?php
define("HOST","localhost");
define("USER","root");
define("PASS","");
define("DB","lama");
$link = mysql_connect(HOST,USER,PASS) or die (mysql_error());
mysql_select_db(DB, $link);
mysql_query ("SET NAMES utf8");
mysql_query ("set character_set_client='utf8'");
mysql_query ("set character_set_results='utf8'");
mysql_query ("set collation_connection='utf8_general_ci'");
$sql="SELECT * FROM `content` WHERE `catid`=11 order by `id` desc LIMIT 1, 10";
$result = mysql_query($sql) or die(mysql_error() ."<br/>". $sql);
как мне добавить здесь код с новой таблицей?
Спустя 58 минут, 8 секунд (19.03.2011 - 21:03) datvid написал(а):
Спасибо огромное!!! Ответ нашел!!! Заработало!!!