Как стать автором
Поиск
Написать публикацию
Обновить

Комментарии 39

Не тестировали на скорость работы идентичных вариаций в случае выполнения на клиенте хтмл 5 и стандартным php скриптом?
Причем тут пхп? Или предлагаете сравнить sqlite на сервере с sqlite на клиенте?

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

Хотя возможны и другие варианты, например, роль основной базы в приложении Opera Unite…
точно, ступилс, что-то совершенно не о том подумал :)
Лично я в этом не вижу смысла. HTML все больше уходит от языка разметки, которым задумывался первоначально.
Ну вы же понимаете, что sqlite на клиенте — это никоим образом не HTML :)
HTML был и остается тем же что и всегда — декларативным языком разметки. Просто для разработки красивых и динамичных веб приложений не хватает очень многого и со стороны HTML, и JS, и транспортных возможностей, и…
Вот как-то так и получилось, что собрали всё это светлое будущее в одну кучу. И назвали HTML5
HTML тут по сути нипричем, это для толстых клиентов сделано, и я лично, разрабатывая в свое время очень большой проект, был бы доволен такой возможности как клиентские дб
Все разъяснившим что к чему, спасибо. Въехал.
Javascript (nodejs+v8) уходит на сервера, а ORM приходит к клиенту. Как тяжело ломать стереотипы.
Подскажите, кто из браузеров это поддерживает?
WebKit(Chrome, Safari включая iPhone) и Opera c версии 10.50
А что там с ФФ?
В Firefox поддержка работы с произвольными SQLite базами давно уже есть.
https://addons.mozilla.org/en-US/firefox/addon/5817
Если не ошибаюсь, это имеено инструмент для работы, но не интерфейс.
В FF 3.6 реализовано DOM Storage — https://developer.mozilla.org/en/DOM/Storage
У Chrome трудности с поддержкой.
Это же офигенная вещь выходит. Дополнительное хранилище на стороне клиента лишним не будет, давно лелеял свою параноидальную идею об использовании ассиметричного шифрования для аутентификации пользователя на Веб-проектах.
чем для этого куки не угодили?
А в том-то и соль, что использовать это шифрование каждый раз — слишком ресурсоемко и ненужно. Его планирую использовать иногда, в остальных случая использовать как раз временные cookie. Имелось ввиду что не ключ в них передавать, конечно же.
Не понял, что именно предполагается хранить в безе клиента?
а если я кэш постоянно очищаю? что тогда?
А думаете эта БД будет стираться при очистке кеша?
Если будет — чтож, придется перелогиниваться вручную =)

Все же отошли мы от темы топика, нот гуд.
Вообще хорошая вещь. Тоже выберу, как только HTML5 заработает на полную.
HTML5 достигнет статуса W3C recommendation в 2022 или позже, поэтому начинайте внедрение сейчас =)
НЛО прилетело и опубликовало эту надпись здесь
а вот web sql не то что бы нас покинул, но вроде как засобирался.
Неплохая выйдет связь со сторонними приложениями на компе клиента, через БД.
НЛО прилетело и опубликовало эту надпись здесь
работы уже ведутся, посмотрите проект ActiveJS — activejs.org/
НЛО прилетело и опубликовало эту надпись здесь
Подмена знаков вопроса нативно — зачем? База локальная, что ломать тут?
Это в первую очередь механизм для переиспользования запросов (для ускорения их отработки при нескольких последовательных вызовах), во вторую — для передачи сложным структур данных (array/blob/clob, хотя не в курсе: есть ли такое в sqlite), а уж потом для верификации типов и противодействия sql-injection.
Видимо, чтобы не было подобного:

(обычный текст введен пользователем) — I'm looking at cruiser «Aurora»! That's great!

Какие кавычки в запросе не поставите — без экранирования не обойтись
Если интересно: БД на стороне клиента возможна также через использование Google gears (http://gears.google.com/)
Ура, новое не паханное поле для специалистов из области клиентской оптимизации.
А как делать синхронные запросы, а то эта асинхронность башню рвет.
openDatabaseSync() почему-то не работает.
Это не реализовано.
До сих пор? :)))
Пробовал — не работает в Хроме.
работает и еще как и в хроме и в андроиде
в статье кое-что упущено, при использовании метода openDatabase работает асинхронная версия API и сигнатура метода db.transaction включает в себя ещё два обработчика
transaction(transaction, errorCallback, successCallback);
Зарегистрируйтесь на Хабре, чтобы оставить комментарий

Публикации