Добро пожаловать на Pro Pawn - Портал о PAWN-скриптинге.
Страница 2 из 2 ПерваяПервая 1 2
Показано с 11 по 20 из 20
  1. #11
    Аватар для PawnoNoob
    Пользователь

    Статус
    Оффлайн
    Регистрация
    31.03.2016
    Сообщений
    257
    Репутация:
    3 ±
    Цитата Сообщение от DeimoS Посмотреть сообщение
    Ну если там есть функции перевода UNIX времени в дату - да.
    Если обе даты хранятся в БД и ты хочешь получить разницу между ними прямо при выгрузке, то никакие махинации на стороне сервера не нужны. Всё делается прямо в запросе и в качестве результата возвращается дата нужного формата
    И как это реализовать? Ну, в виде запроса.

  2. #12
    Аватар для DeimoS
    Модератор?

    Статус
    Оффлайн
    Регистрация
    27.01.2014
    Адрес
    Восточный Мордор
    Сообщений
    5,588
    Репутация:
    1984 ±
    Цитата Сообщение от PawnoNoob Посмотреть сообщение
    И как это реализовать? Ну, в виде запроса.
    Нужно всю ту же самую формулу реализовать в запросе самом. То бишь
    PHP код:
    UNIX_TIMESTAMP(новая_дата)-UNIX_TIMESTAMP(старая_дата
    получится разница в секундах. А далее всё то же самое.


    UPD: Ааа, если тебе именно количество дней нужно получить, а не информацию в формате "год:месяц:день час:минута:секунда", то всё ещё проще.
    PHP код:
    SELECT TIMESTAMPDIFF(DAYстарая_датановая_дата) AS result WHERE ... 
    Количество дней вернётся как "result"
    Последний раз редактировалось DeimoS; 21.12.2017 в 01:26.
    Связаться со мной в VK можно через личные сообщения этой группы
    Заказы не принимаю

    Широко известно, что идеи стоят 0.8333 цента каждая (исходя из рыночной цены 10 центов за дюжину).
    Великих идей полно, на них нет спроса.
    Воплощение идеи в законченную игру требует долгой работы,
    таланта, терпения и креативности, не говоря уж о затратах денег, времени и ресурсов.
    Предложить идею просто, воплотить – вот в чём проблема

    Steve Pavlina

  3. Пользователь сказал cпасибо:
    PawnoNoob (24.12.2017)
  4. #13
    Аватар для PawnoNoob
    Пользователь

    Статус
    Оффлайн
    Регистрация
    31.03.2016
    Сообщений
    257
    Репутация:
    3 ±
    Цитата Сообщение от DeimoS Посмотреть сообщение
    Нужно всю ту же самую формулу реализовать в запросе самом. То бишь
    PHP код:
    UNIX_TIMESTAMP(новая_дата)-UNIX_TIMESTAMP(старая_дата
    получится разница в секундах. А далее всё то же самое.


    UPD: Ааа, если тебе именно количество дней нужно получить, а не информацию в формате "год:месяц:день час:минута:секунда", то всё ещё проще.
    PHP код:
    SELECT TIMESTAMPDIFF(DAYстарая_датановая_дата) AS result WHERE ... 
    Количество дней вернётся как "result"
    Если честно, то не совсем понятно. Мне ведь нужно переводить unix-время в обычное, а после этого уже высчитывать количество дней? И что должно идти после "WHERE"?

  5. #14
    Аватар для Sp1ke
    Пользователь

    Статус
    Оффлайн
    Регистрация
    01.03.2015
    Сообщений
    245
    Репутация:
    55 ±
    Цитата Сообщение от PawnoNoob Посмотреть сообщение
    Если честно, то не совсем понятно. Мне ведь нужно переводить unix-время в обычное, а после этого уже высчитывать количество дней? И что должно идти после "WHERE"?
    Пример запроса, если я правильно тебя понял:
    PHP код:
    SELECT TIMESTAMPDIFF(DAYFROM_UNIXTIME(UNIX_TIMESTAMP()), FROM_UNIXTIME(UNIX_TIMESTAMP() + 86400 30)) AS result 
    Вместо функции UNIX_TIMESTAMP() необходимо подставить свое unix-время, кол-во дней - result

  6. Пользователь сказал cпасибо:
    PawnoNoob (24.12.2017)
  7. #15
    Аватар для DeimoS
    Модератор?

    Статус
    Оффлайн
    Регистрация
    27.01.2014
    Адрес
    Восточный Мордор
    Сообщений
    5,588
    Репутация:
    1984 ±
    Цитата Сообщение от PawnoNoob Посмотреть сообщение
    Если честно, то не совсем понятно. Мне ведь нужно переводить unix-время в обычное, а после этого уже высчитывать количество дней? И что должно идти после "WHERE"?
    Так тебе в каком формате нужно выводить разницу во времени? Просто количество дней или количество секунд, минут, часов, дней, месяцев и лет?
    Связаться со мной в VK можно через личные сообщения этой группы
    Заказы не принимаю

    Широко известно, что идеи стоят 0.8333 цента каждая (исходя из рыночной цены 10 центов за дюжину).
    Великих идей полно, на них нет спроса.
    Воплощение идеи в законченную игру требует долгой работы,
    таланта, терпения и креативности, не говоря уж о затратах денег, времени и ресурсов.
    Предложить идею просто, воплотить – вот в чём проблема

    Steve Pavlina

  8. Пользователь сказал cпасибо:
    PawnoNoob (24.12.2017)
  9. #16
    Аватар для PawnoNoob
    Пользователь

    Статус
    Оффлайн
    Регистрация
    31.03.2016
    Сообщений
    257
    Репутация:
    3 ±
    Цитата Сообщение от DeimoS Посмотреть сообщение
    Так тебе в каком формате нужно выводить разницу во времени? Просто количество дней или количество секунд, минут, часов, дней, месяцев и лет?
    Мне нужно вывести просто количество дней.
    В базе данных хранится всё в unix. Например: первая дата - 01.01.2017 (00:00) выглядит так: 1483228800; вторая дата - 01.01.2018 (00:00), соответственно, так: 1514764800. Мне необходимо узнать только количество дней и вывести их в соответствующей функции.
    На выходе (после всех манипуляций, если можно так выразиться) должно быть примерно так: "Количество дней: 365".

  10. #17
    Аватар для DeimoS
    Модератор?

    Статус
    Оффлайн
    Регистрация
    27.01.2014
    Адрес
    Восточный Мордор
    Сообщений
    5,588
    Репутация:
    1984 ±
    Цитата Сообщение от DeimoS Посмотреть сообщение
    PHP код:
    SELECT TIMESTAMPDIFF(DAYстарая_датановая_дата) AS result FROM таблица WHERE ... 
    Количество дней вернётся как "result"
    И всё. "старая_дата" и "новая_дата" замени нужными столбцами + условие допиши
    Связаться со мной в VK можно через личные сообщения этой группы
    Заказы не принимаю

    Широко известно, что идеи стоят 0.8333 цента каждая (исходя из рыночной цены 10 центов за дюжину).
    Великих идей полно, на них нет спроса.
    Воплощение идеи в законченную игру требует долгой работы,
    таланта, терпения и креативности, не говоря уж о затратах денег, времени и ресурсов.
    Предложить идею просто, воплотить – вот в чём проблема

    Steve Pavlina

  11. #18
    Аватар для PawnoNoob
    Пользователь

    Статус
    Оффлайн
    Регистрация
    31.03.2016
    Сообщений
    257
    Репутация:
    3 ±
    Цитата Сообщение от DeimoS Посмотреть сообщение
    И всё. "старая_дата" и "новая_дата" замени нужными столбцами + условие допиши
    А какое должно быть условие?

  12. #19
    Аватар для DeimoS
    Модератор?

    Статус
    Оффлайн
    Регистрация
    27.01.2014
    Адрес
    Восточный Мордор
    Сообщений
    5,588
    Репутация:
    1984 ±
    Эмм, ну а даты чего ты сравниваешь? Если из аккаунта берёшь - ID аккаунта. В общем, всё, что позволит найти нужную строку в БД
    Связаться со мной в VK можно через личные сообщения этой группы
    Заказы не принимаю

    Широко известно, что идеи стоят 0.8333 цента каждая (исходя из рыночной цены 10 центов за дюжину).
    Великих идей полно, на них нет спроса.
    Воплощение идеи в законченную игру требует долгой работы,
    таланта, терпения и креативности, не говоря уж о затратах денег, времени и ресурсов.
    Предложить идею просто, воплотить – вот в чём проблема

    Steve Pavlina

  13. Пользователь сказал cпасибо:
    PawnoNoob (24.12.2017)
  14. #20
    Аватар для PawnoNoob
    Пользователь

    Статус
    Оффлайн
    Регистрация
    31.03.2016
    Сообщений
    257
    Репутация:
    3 ±
    Цитата Сообщение от DeimoS Посмотреть сообщение
    Эмм, ну а даты чего ты сравниваешь? Если из аккаунта берёшь - ID аккаунта. В общем, всё, что позволит найти нужную строку в БД
    Ах, точно. Всё, вопросов больше нет. Спасибо

 

 
Страница 2 из 2 ПерваяПервая 1 2

Информация о теме

Пользователи, просматривающие эту тему

Эту тему просматривают: 1 (пользователей: 0 , гостей: 1)

Ваши права

  • Вы не можете создавать новые темы
  • Вы не можете отвечать в темах
  • Вы не можете прикреплять вложения
  • Вы не можете редактировать свои сообщения
  •