Правила форума Гаранты форума
Размещение рекламы AMX-X компилятор

Здравствуйте, гость Вход | Регистрация

Наши новости:

14-дек
24-апр
10-апр
11-апр

php + mysql нужна помощь )

Статус пользователя FreeDom
сообщение 5.2.2015, 21:39
Сообщение #1


Стаж: 15 лет

Сообщений: 959
Благодарностей: 67
Полезность: 129

Всем привет!
Задача такая есть таблица mysql такого содержание
ид - юзера
имя - имя юзера
ид-новости - ид новости человека
news_read - количество просмотров новости человека
нужно посчитать количество просмотров всех новостей, количество новойстей
и записать в другую таблицу такого типа
ид - юзера
имя юзера
количество просмотров юзера
количество новостей юзера
дату
и такую запись нужно делать каждый день

Отредактировал: FreeDom, - 5.2.2015, 21:43
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   Цитировать сообщение
Статус пользователя Orty_Hart
сообщение 5.2.2015, 22:21
Сообщение #2
Стаж: 14 лет

Сообщений: 1399
Благодарностей: 408
Полезность: 725

FreeDom,
поставь cron на 00:00:00 каждый день, а в файле считай свои записи и вноси в БД
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя FreeDom
сообщение 6.2.2015, 4:41
Сообщение #3


Стаж: 15 лет

Сообщений: 959
Благодарностей: 67
Полезность: 129

Цитата(Orty_Hart @ 5.2.2015, 22:21) *
FreeDom,
поставь cron на 00:00:00 каждый день, а в файле считай свои записи и вноси в БД

Крон то понятно, я запрос составить не могу )
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя Orty_Hart
сообщение 6.2.2015, 14:36
Сообщение #4
Стаж: 14 лет

Сообщений: 1399
Благодарностей: 408
Полезность: 725

FreeDom,

Если я вас правильно понял, вот ваш код...

Код
$connect1 = mysql_query("SELECT DISTINCT(`user_id`), /* тут все поля таблиц, для вывода */ FROM `DB_USER`");

while($user = mysql_fetch_object($connect1))
{
    $connect2 = mysql_query("SELECT COUNT(DISTINCT(`ид-новости`)) AS `news`, SUM(news_read) AS `open` FROM `DB_USER` WHERE `user_id` = '$user->ID юзера'");
    $stats = mysql_fetch_object($connect2);
    
    /*         вставляем в БД куда нужно
            $stats->open - суммарное кличество просмотров новостей, у одного пользователя.
            $stats->news - суммарное кличество новостей.
    */
}


В противном случае, опишите ваши требования доступным языком.
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя onotole
сообщение 6.2.2015, 15:38
Сообщение #5


Иконка группы

Стаж: 13 лет

Сообщений: 1572
Благодарностей: 1119
Полезность: 1550

Меценат Меценат

Цитата(Orty_Hart @ 6.2.2015, 15:36) *
FreeDom,

Если я вас правильно понял, вот ваш код...

Код
$connect1 = mysql_query("SELECT DISTINCT(`user_id`), /* тут все поля таблиц, для вывода */ FROM `DB_USER`");

while($user = mysql_fetch_object($connect1))
{
    $connect2 = mysql_query("SELECT COUNT(DISTINCT(`ид-новости`)) AS `news`, SUM(news_read) AS `open` FROM `DB_USER` WHERE `user_id` = '$user->ID юзера'");
    $stats = mysql_fetch_object($connect2);
    
    /*         вставляем в БД куда нужно
            $stats->open - суммарное кличество просмотров новостей, у одного пользователя.
            $stats->news - суммарное кличество новостей.
    */
}


В противном случае, опишите ваши требования доступным языком.

1. не обязательно записывать mysql_query в переменную, если ее не будешь использовать. Память всё-таки.
2. Зачем mysql_fetch_object, если все манипуляции сводятся только к выводу? Объект в разы тяжелее массива
3. Для чего DISTINCT?? База в несколько гигов чтоли?
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
umprex
сообщение 6.2.2015, 16:03
Сообщение #6


Иконка группы

Стаж: 16 лет
Город: Киев

Сообщений: 2909
Благодарностей: 4781
Полезность: 2197

onotole, там на 1 ид несколько записей, т.е. несколько новостей, и такими бд заспамлена.

Я вот только до сих пор не понял что должна показывать дата..


Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя FreeDom
сообщение 6.2.2015, 16:13
Сообщение #7


Стаж: 15 лет

Сообщений: 959
Благодарностей: 67
Полезность: 129

Цитата(umprex @ 6.2.2015, 16:03) *
onotole, там на 1 ид несколько записей, т.е. несколько новостей, и такими бд заспамлена.

Я вот только до сих пор не понял что должна показывать дата..

Нужно по этой дате потом сотрировать статистику за месяц, неделю и день )
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя Orty_Hart
сообщение 7.2.2015, 14:39
Сообщение #8
Стаж: 14 лет

Сообщений: 1399
Благодарностей: 408
Полезность: 725

onotole,
Цитата
1. не обязательно записывать mysql_query в переменную, если ее не будешь использовать. Память всё-таки.
2. Зачем mysql_fetch_object, если все манипуляции сводятся только к выводу? Объект в разы тяжелее массива
3. Для чего DISTINCT?? База в несколько гигов чтоли?


1. Что-то не нравится? Тебя тут не держут. А если такой умный, не вижу твоих идей для помощи автора.
2. -
3. Почитай сам
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя onotole
сообщение 7.2.2015, 16:36
Сообщение #9


Иконка группы

Стаж: 13 лет

Сообщений: 1572
Благодарностей: 1119
Полезность: 1550

Меценат Меценат

Цитата(Orty_Hart @ 7.2.2015, 15:39) *
onotole,


1. Что-то не нравится? Тебя тут не держут. А если такой умный, не вижу твоих идей для помощи автора.
2. -
3. Почитай сам

Хорошие тут модераторы. Прям один лучше другого.
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя Orty_Hart
сообщение 7.2.2015, 19:01
Сообщение #10
Стаж: 14 лет

Сообщений: 1399
Благодарностей: 408
Полезность: 725

onotole,
Хорошие тут у пользователей отношении к Модераторам и Администраторам.
Я за тобой не первый раз замечаю, как ты критикуешь пользователей Выше себя.

FreeDom,
что вы пытаетесь сделать? Может есть другой вариант решения. umprex, сказал правильно, вы такими темпами засорите БД.
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя FreeDom
сообщение 7.2.2015, 20:03
Сообщение #11


Стаж: 15 лет

Сообщений: 959
Благодарностей: 67
Полезность: 129

Цитата(Orty_Hart @ 7.2.2015, 19:01) *
onotole,
Хорошие тут у пользователей отношении к Модераторам и Администраторам.
Я за тобой не первый раз замечаю, как ты критикуешь пользователей Выше себя.

FreeDom,
что вы пытаетесь сделать? Может есть другой вариант решения. umprex, сказал правильно, вы такими темпами засорите БД.

Мне нужно вести лог всех посешений по статье а потом выводить сумму количества просмотров юзера за определенные промежутки времени за 1 день, за месяц, за определенную дату
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
umprex
сообщение 7.2.2015, 20:29
Сообщение #12


Иконка группы

Стаж: 16 лет
Город: Киев

Сообщений: 2909
Благодарностей: 4781
Полезность: 2197

FreeDom, это возможно, если уже есть логирование по просмотрам, а если ты сейчас говоришь о всё том же скрипте, под который я писал вывод просмотров, то там нужно очень много переписать под твои желания. Я думаю, тогда тебе ближе подойдет раздел Куплю.


Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя onotole
сообщение 8.2.2015, 8:45
Сообщение #13


Иконка группы

Стаж: 13 лет

Сообщений: 1572
Благодарностей: 1119
Полезность: 1550

Меценат Меценат

Разве я критикуют кого-то? Или для тебя простой совет это уже критика?
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя Orty_Hart
сообщение 8.2.2015, 10:02
Сообщение #14
Стаж: 14 лет

Сообщений: 1399
Благодарностей: 408
Полезность: 725

onotole,
Критика - Википедия

FreeDom, думаю тут только платно.
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
Поблагодарили 1 раз
   + Цитировать сообщение
Статус пользователя onotole
сообщение 8.2.2015, 12:32
Сообщение #15


Иконка группы

Стаж: 13 лет

Сообщений: 1572
Благодарностей: 1119
Полезность: 1550

Меценат Меценат

Цитата(Orty_Hart @ 8.2.2015, 11:02) *

Ты даже ссылкам бросаться не умеешь... Где хоть слово суждения? Я просто посоветовал и всё.
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя FreeDom
сообщение 8.2.2015, 12:47
Сообщение #16


Стаж: 15 лет

Сообщений: 959
Благодарностей: 67
Полезность: 129

Цитата(Orty_Hart @ 8.2.2015, 10:02) *
onotole,
Критика - Википедия

FreeDom, думаю тут только платно.

Да тут надо скорей не платно а все с 0 самому писать )
Записывать все данные и т д
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя Orty_Hart
сообщение 8.2.2015, 17:02
Сообщение #17
Стаж: 14 лет

Сообщений: 1399
Благодарностей: 408
Полезность: 725

onotole,
Совету нужно давать автору (которых у вас нет).
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
umprex
сообщение 8.2.2015, 18:20
Сообщение #18


Иконка группы

Стаж: 16 лет
Город: Киев

Сообщений: 2909
Благодарностей: 4781
Полезность: 2197

onotole, зачем оправдываться, если критика была, я не говорю что это плохо. Я время от времени тоже в уме у себе критикую ваши работы, когда правлю их, там тоже есть недоработки.
Уместная критика всегда хорошо, т.к. помогает научиться лучшему и понять ошибки. Тему закрываю, думаю автор всё понял и сделал для себя вывод.


Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
Поблагодарили 1 раз
   + Цитировать сообщение
  Тема закрытаНачать новую тему
 
0 пользователей и 1 гостей читают эту тему: