OpenStreetBugs — лёгкий способ сообщить об ошибке в OpenStreetMap

OpenStreetBugs — лёгкий способ сообщить об ошибке в OpenStreetMap

Вы, конечно, знаете о свободной карте OpenStreetMap. Это настоящая народная карта, создаваемая такими же людьми как и вы! Это такой же opensource-проект как Linux и как Википедия. Конечно же, как и в других картах, в OpenStreetMap имеются ошибки, но в отличие от тех же Яндекс.Карт, где ошибки не исправляются годами из-за сложной бюрократической процедуры (я уже не говорю о намеренных ошибках), в OpenStreetMap всё гораздо проще и лучше для всех нас...
Подробнее..

CloudMade Navigation поддерживает ограничения манёвров

CloudMade Navigation поддерживает ограничения манёвров

Не так давно CloudMade выделил несколько приоритетных направлений, среди которых оказалась и навигация. Решено было создать специальный проект Navi Studio, который объединял бы в себе несколько более мелких сервисов и позволял пользоваться ими, для создания полноценного навигационного программного обеспечения. В Navi Studio вошли: Работа закипела и уже появилось несколько приложений использующих данный проект. Но полноценной навигации без соблюдения правил ПДД не существует, а потому данному вопросу было также уделено не мало времени...
Подробнее..

Удали себя из интернет-социума — «Web 2.0 Suicide Machine»

Удали себя из интернет-социума — «Web 2.0 Suicide Machine»

Недавно наткнулся в сети на один занимательный интернет-сервис, именующийся Web 2.0 Suicide machine . Предназначен он для того, чтобы позволить людям, обремененным «социальной жизнью в интернете», в пару кликов удалить свои аккаунты на Facebook (в данный момент сервис блокирован администрацией по IP), Twitter, Linkedin и Myspace. В общем-то судя по количеству положительных отзывов и «успешных очищений» — пипл хавает зависимые от социальных сетей успешно пользуются сервисом и довольны...
Подробнее..




Хранение даты в mysql с учетом часового пояса

Веб разработка - Работа с БД

хранение даты в mysql с учетом часового пояса


Статья о том, как избежать путаницы с датами, хранимыми в mysql.
Эти путаницы возникают по двум причинам:
1. Разные территории нашей планеты имеют разный сдвиг времени.
2. Некоторые страны переходят на летнее время и обратно(карта со странами, переходящими на летнее время).

Многие решают эти проблемы по-разному. Кто-то делает сдвиг даты в SQL запросах, кто-то в php. Кто-то хранит даты в TIMESTAMP, кто-то в DATETIME. Я переискал много источников, но нигде не нашел верного решения данной проблемы на русском. В родной документации по mysql нашел информацию о том, как добиться корректной автоматической конвертации TIMESTAMP в локальное время, но тут тоже свои подводные камни.

Если в php настройка временной зоны делается просто, в mysql возникают сложности, особенно, если доступ к mysql серверу вам ограничен и там еще не установлены некоторые таблицы.

Чем отличаются форматы хранения даты TIMESTAMP и DATETIME, я надеюсь вы знаете.
Значение TIMESTAMP является абсолютным значением времени, которое не зависит от локальных настроек. В любой стране, на любом компьютере оно одно и тоже. По-этому, в большинстве случаев лучше хранить дату именно в TIMESTAMP.

Если вы сделаете запрос
SELECT `timestamp_field` FROM table
вы получите дату в формете «гггг-мм-дд чч: мм: сс».
Казалось бы, все просто. И эта простота слишком соблазнительна и именно из за нее могут возникать проблемы, ведь нужно указать какая временная зона у пользователя, для которого достается дата.
И решение есть: можно задавать зону запросом

SET time_zone='+03:00'

где '+03:00' — это текущий сдвиг даты от лондонского нулевого времени.
Но после этого запроса mysql начинает неверно обрабатывать переход на летнее время.
Если значение time_zone установлено в SYSTEM (по умолчанию), переход на летнее время обрабатывается верно.
Например, сейчас лето и действует летнее время.
Нам нужно перевести в локальное время TIMESTAMP, хранимый в БД. Его значение — 946681261 (это '2000-01-01 01:01:01' по Киевскому времени)
Делаем запрос:

SET time_zone = 'SYSTEM';
SELECT NOW(), FROM_UNIXTIME(946681261);


 


Читайте:


Добавить комментарий


Защитный код
Обновить

News image

Что такое AJAX API для Google Переводчика?

Благодаря AJAX API для Google Переводчика можно переводить и определять язык блоков текста на веб-странице, используя только JavaScript. Кроме того,...

News image

Adobe и новая технология для iPad

Несмотря на накал в отношениях между Adobe и Apple, создатели Flash пытаются доказать, что они не намерены уходить с поля боя. Недавно калифорнийцы ...

News image

Демонстрация HTML5 от Apple: пнем Flash чуть сильнее

Все, кто слышал о неумолимо надвигающемся счастье в виде HTML5, скорей всего слабо представляют с чем это собственно едят. Apple в рамках программы ...

News image

Gmail Labs: кто выйдет в свет, а кто уйдет в отставку

Мы запустили Gmail Labs более полутора лет назад. Это экспериментальная лаборатория, позволяющая разработчикам предлагать новые функции, а вам – реш...

News image

ColdFusion 9 – новые технологии для создания web-приложений

Компания Adobe Systems сообщила о выпуске трех новых технологий в рамках разработки платформы ColdFusion. ColdFusion 9 позволяет быстро создавать мо...

Топ технологий:

News image

Оздана новая система беспроводной связи - она в 10

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

News image

Как взломали Twitter

В Интернетах, наряду с iPad, сканерами в аэропортах и войне между Google и Apple, уже второй день подряд активно обсуждается тема взлома и...