Как настроить систему новостей Полная система новостей включает не только интерфейс новостей для просмотра, но также мощные функции для управления многими функциями и фонового управления. Итак, как планируются и распределяются подфункции внутри этих функций? Давайте представим управление развертыванием каждой функции. Реализация новостной системы проста, но ее также можно назвать очень сложной.
Систему новостей можно разделить на три части: система входа администратора, система управления новостями и система просмотра пользователей. Весь процесс прост:
1. Менеджеры публикуют новости --> база данных --> пользователи просматривают новости
2. Обнаружены проблемы --> вход в систему управления --> редактирование и изменение новостей
Описанный выше процесс кажется простым, но его не так просто реализовать. . Это система. Разработка доски объявлений намного сложнее, чем реализация доски объявлений, но основной принцип работы тот же, что и у доски объявлений. Главным приоритетом в системе выпуска новостей является планирование базы данных и внедрение системы управления.
Каково сейчас содержание новостей: классификация новостей, онтология информации. Можно включить эти два содержимого в одну таблицу данных в базе данных, но это неэкономично. Поэтому мы можем использовать две таблицы данных для хранения содержимого отдельно: одну специально для хранения классификации новостей, а другую для хранения. онтология информации. Как вызвать и реализовать совместное использование содержимого двойных таблиц? Используйте ассоциацию таблиц, чтобы реализовать эту проблему (эти знания здесь не представлены. Читатели могут самостоятельно обращаться к содержимому знаний, связанному с базой данных. Знания, полученные собственными усилиями). это самое ценное, не так ли?)
Ниже представлена реализация функции управления:
1. Первая — это выпуск новостей
. Он состоит из серии форм подачи и разделен на две категории: Создание категорий новостей и публикация новостей; после создания категорий новостей публиковать соответствующие новости в каждой категории очень просто! Это не так! Подумайте о том, что вся онтология информации сосредоточена в одной таблице данных.
Упомянутая выше ассоциация таблиц здесь очень важна. Конечно, этот метод не нужен. Создание независимой таблицы длякаждой
категории также может решить проблему. Но как насчет удобства обслуживания и масштабируемости?
классификация и онтология информации вызвали проблемы, кстати, решение состоит в том, чтобы использовать ассоциации таблиц.
2. Вопросы редактирования, изменения и удаления.
Это базовые знания php+mysql. Реализовать эти функции не буду, здесь много внимания. с категорией при ее изменении или удалении. А как насчет информационной онтологии под ней? Благодаря использованию табличных ассоциаций обработка этих функций осуществляется так, как если бы они обрабатывались в таблице.
3. Многозадачность
Но что происходит, когда несколько человек одновременно редактируют новость? Ситуация такова, что в базе данных будет храниться только последний отредактированный контент. Если это произойдет, это будет означать, что тяжелая работа предыдущих редакторов закончилась. Многозадачность Решение этой проблемы состоит в том, чтобы использовать предвзятый подход, то есть те, кто входит в редактор первыми, имеют разрешения на редактирование, а те, кто входит позже, имеют разрешения только на просмотр до завершения редактирования. Эта функция очень похожа на контроль разрешений в Linux, не так ли?
Есть несколько способов выполнить эту функцию: 1. Используйте файлы cookie для контроля, 2. Добавьте в таблицу поля контроля разрешений. Конечно, проще использовать файлы cookie. Метод и процесс реализации файлов cookie заключаются в следующем:
когда администратор входит в редактор и устанавливает файл cookie, программный сегмент функции редактирования определяет значение файла cookie. Если оно пустое, редактирование. Если он не пуст, редактирование отклоняется и редактор завершает работу. Затем очистите файлы cookie, и цикл повторится. Это эффективная функция, которая может, по крайней мере, сократить потери времени и рабочей силы.
Реализация функции просмотра новостей очень проста. С добавлением функции перелистывания страниц (которая была представлена на этом сайте) мощная система новостей в основном завершена. Кажется, что отсутствует очень важная функция, а именно функция. поисковая система. Каждый веб-сайт желает иметь мощную поисковую систему, а создание мощной поисковой системы довольно сложно и сложно. Оно включает в себя множество аспектов, таких как эффективность, точность и скорость.
Представленные здесь поисковые системы не будут проводить столь глубокие исследования, а лишь будут выполнять точные запросы по конкретному контенту. Сложная и мощная поисковая система требует большого количества навыков программирования и работы с базами данных. Начнем с простой поисковой системы. Как работает поисковая система? Она получает заданные ключевые слова, выполняет поиск в заданном диапазоне, а затем возвращает результаты поиска.
Указанные ключевые слова могут находиться где угодно в информационном содержании. Как движок выполняет поиск? Здесь используется следующий оператор базы данных:
выберите * из таблицы, где (имя типа «%».$keyword».%'
name — это конкретное место для поиска, обычно имя поля, например «%».$keyword. «%» — это сопоставление с образцом, то есть , в содержимом Найдите $keyword. Рассмотрим пример:
в таблице данных новостей найдите все заголовки, содержащие ключевое слово «хорошо»:
выберите * из новостей где (заголовок типа «%good%»
Это точный поиск, позволяющий найти все заголовки с хорошим значением в базе данных. Также существует нечеткий поиск:
выберите * из новостей где (заголовок типа «%хорошо»
Вы также можете найти результаты таким способом);
Если предположить, что новость содержит такие поля, как заголовок, сообщение, пользователь и т. д., приведенная выше область поиска слишком узка, поскольку поиск осуществляется только по заголовку, а другой контент необходимо искать, не усложняя операцию. Как с этим справиться. ?
Мы заметили, что любое изменяющееся значение в программе обрабатывается переменными. Этот метод также работает здесь. Вы можете передать диапазон, который хотите найти, как переменную, поэтому у вас есть следующий синтаксис базы данных: Got:
mysql_query("select * from newswhere ($name Like '%".$keyword."%'));
$name хранит значение переданной переменной поля, и это значение переменной переносится через HTML-выбор. Отправьте форму в Что делать, если вы хотите ограничить результаты поиска определенным диапазоном времени. Например, если вы хотите найти информацию в течение 5 дней, помните ли вы синтаксис базы данных, использованный во введении к файлам cookie
? союз заключается в следующем:
mysql_query("выберите * из новостей, где ($имя типа
'%".$keyword."%') and time>date_sub('$time',интервал 5 дней)");
Где $time — текущее время поиска: $time=date('Ymd H:i:s'); time — поле, в котором база данных хранит информацию о времени. Теперь замените $old на 5:
mysql_query("выберите * из новостей, где ($имя типа
'%".$keyword."%') and time>date_sub('$time',interval $old day)");
Аналогичным образом, значение $old передается в течение разного ограниченного времени через форму выбора отправки, что завершает работу этой довольно мощной поисковой системы. Некоторые более мощные поисковые системы требуют наличия навыков программирования. Читатели могут расширить свои собственные эксперименты с помощью вышеуказанных принципов.