Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770
Форумы портала PHP.SU :: Версия для печати :: Модуль "Comment"
Форумы портала PHP.SU » PHP » Программирование на PHP » Модуль "Comment"

Страниц (1): [1]
 

1. Merrym - 20 Ноября, 2015 - 13:37:29 - перейти к сообщению
Как лучше делать модуль комментарии для новостной ленты,

У меня мысль такая.

Создать в базе таблицу Comment,которая будет хранить айди пользователя,айди поста, время коммента.(может еще пару полей)

Или лучше создать таблицу Сomment,которя будет хранить айди поста,все коммент. этого поста(который программно нужно отпарсить).

Как лучше делать? Может я где-то ошибаюсь, и колесо не нужно создавать.

Если будут ссылки с гитхаба, с норм документацией, можно и внедрять.
2. Faraon-san - 20 Ноября, 2015 - 14:06:37 - перейти к сообщению
о каком движке идет речь? модуль к чему?
3. Merrym - 20 Ноября, 2015 - 15:59:17 - перейти к сообщению
Свой движок))

Простенькая новостная лента, где можно оставить комментарии, после прочитанной статьи
4. Мелкий - 20 Ноября, 2015 - 16:57:59 - перейти к сообщению
Merrym пишет:
хранить айди пользователя,айди поста, время коммента.(может еще пару полей)

Разумеется, этот вариант.
5. Merrym - 20 Ноября, 2015 - 18:23:42 - перейти к сообщению
[quote=Мелкий][/quote]
Спасибо!

Мелкий можно пару советов получить от вас?
Можете глянуть на проект, может пару дельных вещей подскажете
(Добавление)
И такой момент, не могу нормальный источник найти.

Как комментировать sql запросы в файлах, есть какой-то стиль?,нужно комментировать каждое поле или не нужно подробное описание?
6. Мелкий - 20 Ноября, 2015 - 23:20:41 - перейти к сообщению
Merrym пишет:
Можете глянуть на проект, может пару дельных вещей подскажете

Под настроение и с учётом объёма общего и показателя facepalm-per-second этого кода.

Merrym пишет:
Как комментировать sql запросы в файлах

Зависит от принятых стандартов кодирования в проекте.
Встречал как комментирование всех полей, так и отсутствие любых комментариев
Оптимально комментирование чего-то на первый взгляд нелогичного или неочевидного. Например, использование NULL вместо 0 (для postgresql действительно имеет смысл) должно быт задокументировано где-то рядом с объявлением этой таблицы.
Из стандартных вещей, которые встречаю на многих проектах: именование имя_таблицы_id для FK; created_at, updated_at и другие *_at для дат
7. Merrym - 21 Ноября, 2015 - 09:32:20 - перейти к сообщению
[quote=Мелкий]
Merrym пишет:
Можете глянуть на проект, может пару дельных вещей подскажете

Под настроение и с учётом объёма общего и показателя facepalm-per-second этого кода.

Надеюсь ляпов будет мало,в проекте использовал пару готовых решений.
Перед изучением фраемворков, хочется добить какой-то проект, который поднимет мои знания.
8. Мелкий - 21 Ноября, 2015 - 11:08:48 - перейти к сообщению
Merrym пишет:
Перед изучением фраемворков

Merrym пишет:
Надеюсь ляпов будет мало

Взаимоисключающие параграфы.
9. Merrym - 21 Ноября, 2015 - 11:22:14 - перейти к сообщению
))
(Добавление)
Хотелось бы поговорить с вами через скайп, когда вы будете разбирать ляпы.
Возможен ли такой вариант?
10. Мелкий - 21 Ноября, 2015 - 14:48:02 - перейти к сообщению
Нет, невозможен. Я в свои 24 чрезмерно архаичен и признаю только почту, форумы и, иногда, XMPP.
Где код-то? И каков объём?
11. Merrym - 21 Ноября, 2015 - 15:33:35 - перейти к сообщению
Мелкий пишет:
Где код-то?

Я смотрю вы заинтересованы.

Код пока не сильно большой!
Я отправлю вам на почту, если конечно найду вашу почту
12. Мелкий - 21 Ноября, 2015 - 16:11:47 - перейти к сообщению
Вовсе не заинтересован. Мне это не нужно и новой информации не даст. А если вдруг вместо скайрима появится желание почитать код - есть несколько проектов на работе на php и golang, вплоть до чтения непосредственно исходников php и postgresql.
Без кода диалог просто беспредметный и не имеет смысла.
На почту реагирую dev@zsrv.org
13. Merrym - 21 Ноября, 2015 - 17:04:38 - перейти к сообщению
отправил на почту,пару слов скажу.

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

Дальше хотелось бы прикрутить комментарии, улучшенный пагинатор,Пользователей, и маленькую админку.

Если можно, код не выкладывать, можем обсудить тут или на почте, все моменты которые вы считаете facepalm
14. Merrym - 23 Ноября, 2015 - 15:01:23 - перейти к сообщению
Спасибо за ответ по Коду. Сегодня начну исправление.

Дизайн взял из интернета, очень хорошо было описано.
(Добавление)
//----------------Json_encode получаем comment, url_video
Получаем данные с базы.Если ошибка- $data=false, если данных нет data=null
Делаем проверку
if($data !== false && !empty($data))
{
// с базы приходит массив с индексом [0],очень не нравится, я пока так его присваиваю, но подход кажется не правильный, мб функцию найду
$data = $data[0];
//video_url хранится название и ссылка на видео
$data['video_url'] = $this->get_slesh_pars($data['video_url']);// парсим ссылки, может в дальнейшем создам отдельную таблицу, где будет хранится поле с названием видео,имя видео, силка, айди поста- к которому он относится.
$i = 0;
// Создаем нужный массив
foreach($data['video_url'] as $key => $value)
{
$data['playlist'][$i]["comment"] = $key;
$data['playlist'][$i]["file"] = $value;
$i++;
}
return $data;
}
return false;


//В вюшке его выводим
<? if(isset($data["content"]["playlist"]) && !empty($data["content"]["playlist"])): ?>
{"playlist":<?=json_encode($data["content"]["playlist"]); ?>}
<? else: ?>
Error
<? endif;?>


Не получилось вывести в jsone_encode playlist, пока вывел так.
Если будет время, пару строк, что не так сделал.
(Добавление)
Насчет Singlton c базой.
Если мы подключаем Модель, и если она будет использовать базу данных.То она наследует класс из ядра Model, и там статическое поле хранит соединение с базой.

public function __construct($config)
{
if(проверяем переменную, если null,создаем соединение)
{
self::$переменная = соединение($config);
}
}

Если будем подключать еще модели, если они используют базу, то так же вызывают родительский конструктор.И происходит проверка.
В дальнейшем, класс Model преобразую в abstract.

 

Powered by ExBB FM 1.0 RC1