Создание сценария телегида на PHP ... идеи нужны - PullRequest
0 голосов
/ 30 декабря 2010

Я создаю проект телегида, и мне удалось заставить три вещи работать правильно:

  • Разбиение на страницы
  • Базы данных (но сложная часть - связать таблицы через InnoDB)
  • PHP
  • Функции даты и времени PHP

Создание сайта является более сложной частью, поскольку я знаю, что я хочу сделать, но как этого добиться, это проблема.

http://library.digiguide.tv/lib/programmenextshowing/Casualty-6313 - это пример того, как я пытаюсь заставить мой сайт выглядеть - хорошо, так что это сайт ASP, а мой - на PHP.

Это структура отображения эпизода:

(для шоу с номерами сезонов / эпизодов)

    True Blood showing on FX January 14th, 2011 - 10:00pm "Bad Blood"
Series 3, episode 1. Set Reminder
True Blood showing on FX HD January 14th, 2011 - 10:00pm "Bad Blood"
Series 3, episode 1. Set Reminder
True Blood showing on TG4 January 16th, 2011 - 12:25am   Set Reminder
True Blood showing on TG4 January 16th, 2011 - 1:30am   Set Reminder

для шоу без номеров сезонов / эпизодов:

Casualty showing on BBC Entertainment 4:00pm   Set Reminder
Casualty showing on BBC Entertainment 7:45pm   Set Reminder
Casualty showing on BBC Entertainment 11:20pm   Set Reminder
Casualty showing on Watch December 31st - 11:00am "Episode 1" Set Reminder

В разделе «Установить напоминание» пользователь нажимает на него и отправляет электронное письмо с сообщением «X-шоу на канале Y в Z-время».используя команду php sendmail.

Это моя структура базы данных:

    CREATE TABLE IF NOT EXISTS `programme1airing` (
  `programme` varchar(255) collate utf8_unicode_ci NOT NULL,
  `channel` varchar(255) collate utf8_unicode_ci NOT NULL,
  `airdate` datetime NOT NULL,
  `displayair` datetime NOT NULL,
  `expiration` datetime NOT NULL,
  `episode` varchar(255) collate utf8_unicode_ci NOT NULL,
  `series` varchar(255) collate utf8_unicode_ci NOT NULL,
  `epno` varchar(255) collate utf8_unicode_ci NOT NULL,
  `setreminder` varchar(255) collate utf8_unicode_ci NOT NULL,
  KEY `channel` (`channel`),
  KEY `episode` (`episode`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;

и для таблицы эпизодов программы1:

    CREATE TABLE IF NOT EXISTS `episodes` (
  `epname` varchar(255) NOT NULL,
  `series` varchar(255) NOT NULL,
  `epno` varchar(255) NOT NULL,
  KEY `epname` (`epname`),
  KEY `series` (`series`),
  KEY `epno` (`epno`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1;

и для каналов:

    CREATE TABLE IF NOT EXISTS `channel` (
      `channel` varchar(255) character set utf8 collate utf8_unicode_ci 
NOT NULL default '',
      KEY `channel` (`channel`)
    ) ENGINE=InnoDB DEFAULT CHARSET=latin1;
    enter code here

Однако проблема в том, что он работает, у меня есть хороший скрипт разбивки на страницы, который работает, но я должен интегрировать его с чем-то вроде CodeIgniter и т. Д.

Япытаясь найти хороший способ заставить этот проект работать с CodeIgniter , так как я изучил базовые навыки, он просто находит работоспособное решение, которое является проблемой.

Это в настоящее время находится наlocalhost, под тестовым доменом, так что пока нет проблем с живым сайтом.

Любой совет приветствуется, спасибо.

1 Ответ

0 голосов
/ 30 декабря 2010

Прежде всего, вам необходимо ознакомиться с концепцией MVC, которую использует CI.Затем перейдите к различным стандартным классам, особенно к классу базы данных .Вы можете выбросить свой сценарий разбиения на страницы, поскольку CI имеет для этого кое-что .

Теперь, когда вы прочитали важную документацию, начните думать, как бы распределить различные функции по различным контроллерам.Вы, вероятно, хотите иметь контроллер для каналов, серий и эпизодов.

Что касается функциональности напоминания, вы должны изучить cronjobs , это должно проверить, следует ли отправлять напоминания в это конкретное время.

К счастью, у КИ есть отличная документация.Просто намочите ноги, и когда вы столкнетесь с конкретными проблемами, задайте определенный вопрос.Удачи!

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...