Правила     Закладки     Карма    Календарь    Журналы    Помощь    Поиск    PDA    Чат   
        СМС-ки
   
Пейджер выключен!
 
Фильтр авторов:    показать 
  скрыть
  Ответ в темуСоздание новой темыСоздание опроса

> Записи и комментарии
savelikan  
 ۩  Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Здесь живет
******

Профиль
Группа: Форумчанин
Завсегдатай форума
Сообщений: 370
Пользователь №: 18633
На форуме: 7 лет, 3 месяца, 27 дней
Карма:




Доброго времени суток всем)))
Хотел бы с вами проконсультироватся...
Как реализовать записи и комментарии к ним как вконтакте?
Тоесть к одной записи выводить до 3х комментариев из другой базы.
Имею введу как организовать базу и как построить запрос к БД
С запросами в цикле можно сделать без проблем, но так ведь неправильно. Наверное всё это одним запросом сделать?
Спасибо за ответы


--------------------
Одесса - мой город!)))
PMПисьмо на e-mail пользователю
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
Arh  
Дата
Цитировать сообщение

Пользователь сейчас на форуме



146%
******

Профиль
Группа: Форумчанин
Завсегдатай форума
Сообщений: 2107
Пользователь №: 27172
На форуме: 5 лет, 8 месяцев, 4 дня
Карма: 70




Запросить записи, запросить комменты к этим записям, при выводе записей, добавить к ним соответствующие комменты.



--------------------
:)
PMСайт пользователя
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
Kusss  
Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Здесь живет
******

Профиль
Группа: Форумчанин
Завсегдатай форума
Сообщений: 1355
Пользователь №: 28976
На форуме: 5 лет, 4 месяца, 7 дней
Карма: 77




Цитата (savelikan @ 16.09.2016 - 22:07)
С запросами в цикле можно сделать без проблем, но так ведь неправильно.
Конечно не стоит так делать. Лучше собрать запросы и объеденить их через UNION.
$comment = [];
// запрос к записям
...
while($value = ...) {
$comment[] = "(SELECT `date`, `text` FROM `comment` WHERE `id_записи` = ".$value['id']." ORDER BY `date` DESC LIMIT 3)";
// при желании добавить LEFT JOIN и подключить автора записи
}

if (count($comment)) {
$sql = implode('UNION', $comment);
....

}


Это сообщение отредактировал Kusss - 17.09.2016 - 13:12
PMПисьмо на e-mail пользователю
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
Valick  
Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Здесь живет
******

Профиль
Группа: Форумчанин
Завсегдатай форума
Сообщений: 5493
Пользователь №: 35718
На форуме: 4 года, 17 дней
Карма: 167




не слушай никого))
сделай отдельную таблицу для хранения последних трёх комментариев


--------------------
wmr - R281553014107
PMПисьмо на e-mail пользователю
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
Kusss  
Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Здесь живет
******

Профиль
Группа: Форумчанин
Завсегдатай форума
Сообщений: 1355
Пользователь №: 28976
На форуме: 5 лет, 4 месяца, 7 дней
Карма: 77




Valick
Тоже вариант, только придется после каждого добавления комментария делать одно добавление и одно удаление. И все равно задача решается через 2 запроса.

И чем в данном случае так плохо UNION ?
вот для примера выполнил у себя выборку для 200 записей
Выполняется очень быстро.
Цитата
548 всего, Запрос занял 0.0293 сек.


Это сообщение отредактировал Kusss - 17.09.2016 - 13:57
PMПисьмо на e-mail пользователю
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
sergeiss  
Дата
Цитировать сообщение

Пользователя сейчас нет на форуме



Сидел он, дум великих полон - и вдаль глядел
******

Профиль
Группа: Эксперт
Группа переписки
Сообщений: 14973
Пользователь №: 4190
На форуме: 8 лет, 10 месяцев
Карма: 443




Цитата (savelikan @ 16.09.2016 - 22:07)
Тоесть к одной записи выводить до 3х комментариев из другой базы.

Из другой БАЗЫ или из какой-то другой таблицы в этой же базе данных?


--------------------
* Хэлп по PHP
* Описалово по JavaScript
* Хэлп и СУБД для PostgreSQL

* Обучаю PHP, JS, вёрстке. Интерактивно и качественно. За разумные деньги.

* "накапливаю умение телепатии" (С) и "гуглю за ваш счет" (С)

user posted image
PMICQ
    0   Для быстрого поиска похожих сообщений выделите 1-2 слова в тексте и нажмите сюда Для быстрой цитаты из этого сообщения выделите текст и нажмите сюда
  Быстрый ответ
Информация о Госте
Введите Ваше имя
Кнопки кодов
Для вставки цитаты, выделите нужный текст и
НАЖМИТЕ СЮДА
Введите сообщение
Смайлики
:huh:  :o  ;) 
:P  :D  :lol: 
B)  :rolleyes:  <_< 
:)  :angry:  :( 
:unsure:  :blink:  :ph34r: 
     
Показать всё

Опции сообщения  Включить смайлики?
 Включить подпись?
 
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:

Опции темы Ответ в темуСоздание новой темыСоздание опроса