LINUX.ORG.RU

js запрос к базе данных


0

0

$(function() {
      $(«#dialog»).dialog({
         bgiframe: true,
         modal: true,
         buttons: {
            Ok: function() {
               тут должен быть запрос к бд
            }
         }
      });

});

Как реализовать ?

★★★

$(function() { $(«#dialog»).dialog({ bgiframe: true, modal: true, buttons: { Ok: function() { тут должен быть запрос к бд } } });

});

так лучшее

chapay ★★★
() автор топика

никак. js может только дернуть урлу и получить от нее результат. js - это клиентская часть, исполняется в браузере. обработка запроса по заданному урл производится на стороне сервера. вот тот скрипт, который будет обрабатывать такой запрос и должен сходить в какую-то БД, взять оттуда данные и послать твоему браузеру (js).

Deleted
()
Ответ на: комментарий от chapay

>урл уникальный как только страничку открыть в том же окне а не во вкладке

1. iframe

2. как-то типа xml http request (только слитно)

www_linux_org_ru ★★★★★
()
Ответ на: комментарий от Pi

> Не унижай мой Девелопмент

бОльшая часть БД — это не особо весть какая ценность, так что вполне покатит какой-нить запрос типа SELECT * FROM mytable WHERE id='%1', теперь осталось %1 передать в урле и почистить перед подстановкой

www_linux_org_ru ★★★★★
()
Ответ на: комментарий от LamerOk

> В толксы!

это зря

валидацию юзерских данных вполне можно затолкать в хранимки или спец. валидирующие запросы, и вся серверная логика будет состоять только из параметризованных sql-запросов

по-моему, это лучше, чем кодить на РНР

www_linux_org_ru ★★★★★
()
Ответ на: комментарий от www_linux_org_ru

извиняюсь, но даже в самом простом нехелловордном случае запрос типа «select * from mytable where id='$1'» не покатит, и в любом случае нужно будет что-то вроде http://www.linux.org.ru/jump-message.jsp?msgid=4259270&cid=4259431 .

только зачем?

qnikst ★★★★★
()
Ответ на: комментарий от qnikst

> только зачем?

тот запрос можно спокойно сделать параметризованным и не передавать весь, а только параметры

смысл этого в том, что почти полностью разделяются данные и их внешнее представление

минусы в том, что поисковик не будет индексировать страницы — т.е. это решение именно для формочек поверх базы данных

(и еще некоторые особо сложные запросы легко параметризованными не сделаешь, их текст формируют на ходу и для этого придется какой-то код писать)

www_linux_org_ru ★★★★★
()
Ответ на: комментарий от qnikst

> только зачем?

профит от программирования на js вместо php в том, что аякс из коробки, а еще можно сами странички сделать статическими, сильно заархивировать, а юзер скачивает архив, распаковывает в ФС и веб-приложение работает прямо оттуда — хорошо для всяких gprs

www_linux_org_ru ★★★★★
()

щас мне скажут, что сокеты в ява-апплетах еще экономичнее по трафику — но для них нужно дырки проделывать в фаерволе

www_linux_org_ru ★★★★★
()

и даже просто статические html-странички могут успешно кэшироваться браузером (в отличие от сгенеренных на каждый чих динамических страниц), или они вообще могут целиком генериться (один раз скачанным и закэшированным) ява-скриптом

www_linux_org_ru ★★★★★
()
Ответ на: комментарий от www_linux_org_ru

бррр, не вижу профита в том, что мы обращаемся к db или к php. в смысле, что есть статическая страница, делается запрос на engine.php, который возвращает json результат.

разница только в том, что в одном случае будет больше напрягаться db и скорее всего код уже будет завязан под конкретный движок базы.

в другом будет напрягаться apache который будет парсить код и делать непосредственный запрос к db и формировать результат.

qnikst ★★★★★
()
Ответ на: комментарий от www_linux_org_ru

что мешает делать page.html с кодом function(){ $.get('engine.php',{..},callback())} всё тоже самое.

а если есть желание ещё больше оптимизоровать, то писать $.get('myaction1/myparam',...); а на php уже нужные хэдеры, чтобы браузер кешировал если надо.

qnikst ★★★★★
()
Ответ на: комментарий от qnikst

> разница только в том, что в одном случае будет больше напрягаться db и скорее всего код уже будет завязан под конкретный движок базы.

БД в любом случае будет напрягаться, с помощью РНР ты ее не разгрузишь. И вообще, при попытках разгрузить БД с помощью РНР ты будешь реализовывать транзакционную логику, что должна делать БД (либо уж юзать яву и как-его-там который разруливает транзакции без БД).

речь идет о том, должен ли заполнять поля в формочке js или php, а БД тут как была, так и будет нужна одинаково

www_linux_org_ru ★★★★★
()
Ответ на: комментарий от qnikst

> а на php уже нужные хэдеры, чтобы браузер кешировал если надо.

как ты закэшируешь страничку с <input type=text value=7 name=quantity> ? никак. либо опять будешь юзать ява-скрипт.

www_linux_org_ru ★★★★★
()
Ответ на: комментарий от www_linux_org_ru

я про то говорю, что в статическом варианте будет <input type=text name=quantity> и число 7 будет подставлено ява-скриптом, так что при его изменение кэш не инвалидируется

www_linux_org_ru ★★★★★
()

к слову

недавно на *очень* тормозном gprs пытался проплатить с ядекс-денег

похоже, у них сессия заканчивалась до того, как я успевал загрузить другую страницу :-) в результате получилось со второй попытки

на все ушел час и целый мегабайт (!) трафика. вот так. а страницы грузились минут по 10 каждая.

www_linux_org_ru ★★★★★
()
Ответ на: комментарий от www_linux_org_ru

все это результат динамических страниц. а была бы статика у меня в кэше браузера — все сложилось бы иначе :-)

www_linux_org_ru ★★★★★
()

(картинки в браузере были отключены конечно)

www_linux_org_ru ★★★★★
()

Придумал очень хорошую игру!

$(function() { $(«#dialog»).dialog({ bgiframe: true, modal: true, buttons: { Ok: function() { тут должна быть игра } } });

Помогите реализовать пажалста! Два года ждал такую игру!

anonymous
()
Ответ на: комментарий от www_linux_org_ru

> вся серверная логика будет состоять только из параметризованных sql-запросов

Запросов по какому протоколу?

Влорчик, миленький, ты сколько часов в сутки спишь? Это уже третий или четвертый тред где ты сам с собой ведешь беседу. Может тебе глицинчику попить?

LamerOk ★★★★★
()

js драйвер для Windows

Сабж

anonymous
()
Ответ на: комментарий от www_linux_org_ru

чем мне тут поможет яваскрипт? 1). чисто php: сделать страничку с полем 2). чисто js html страничка со скриптом, который достанет это поле 3). php+js php выдающий страничку из варианта 2 и устанавливающая необходимый хэдер, чтобы страница кешировалась

Вопрос: чем отличаются варианты 2 и 3? Почему если мы используем php мы обязаны генерировать динамическую страницу, или не можем напрямую указать, что каждая генерация будет одинаковой?

4). вариант php генерирует страничку из варианта 1, все обновления через js (если есть) или полной перезагрузкой, если нет js.

qnikst ★★★★★
()
Ответ на: комментарий от www_linux_org_ru

В случае с php у тебя «парсить» запрос будет апач и отдавать db уже последовательность команд. В случае js-запроса к db этим будет заниматься db. Тут кто-то показывал пример сайта, который был без всякой прослойки - запрос шёл сразу к db, в ответ приходил xml.

qnikst ★★★★★
()
Ответ на: комментарий от LamerOk

> Это уже третий или четвертый тред где ты сам с собой ведешь беседу.

не мешай. может ему приятно поговорить с умным человеком?

Rastafarra ★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.