Модераторы: Sardar, Aliance
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Связать MySQL и JS, реально ли? 
:(
    Опции темы
December
Дата 18.5.2005, 19:26 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Antitheorist
****


Профиль
Группа: Участник
Сообщений: 4423
Регистрация: 14.8.2002
Где: Харьков

Репутация: нет
Всего: 57



Greetings All!
Стоит следующая задача: взаимодействовать с СУБД (MySQL, в частности) на сервере, используя только JavaScript и HTML. Либо какими-то стандартными средствами (если таковые имеются), либо каким-нибудь cgi-bin модулем, по принципу "установил и забыл". Если такое осуществимо, то дайте плиз линки где качать/чего читать.
ЗЫ: Ни php, ни perlом заниматься не хочу. Изучение технологии должно занять максимум 2-3 часа.
Всем заранее спасибо за указание верного пути smile


--------------------
Для друзей с винграда - скидки на разработку сайтов
PM MAIL WWW ICQ   Вверх
PARROT
Дата 18.5.2005, 20:33 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Экс. модератор
Сообщений: 2339
Регистрация: 5.1.2005
Где: Спб-ЦарьГрад

Репутация: 1
Всего: 50



Помоему это невозможно smile
Msql & PHP || Msql & Perl

Выбора нет.


--------------------
Безумный утешается прошедшим, слабоумный - будущим, умный - настоящим!
PM MAIL   Вверх
Aliance
Дата 18.5.2005, 21:20 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


I ♥ <script>
****


Профиль
Группа: Модератор
Сообщений: 6418
Регистрация: 2.8.2004
Где: spb

Репутация: 55
Всего: 137



Цитата(December @ 18.5.2005, 20:26)
Ни php, ни perlом заниматься не хочу.

Цитата(December @ 18.5.2005, 20:26)
Изучение технологии должно занять максимум 2-3 часа.

У меня так и заняло... азы php+MySQL...

Цитата(December @ 18.5.2005, 20:26)
взаимодействовать с СУБД (MySQL, в частности) на сервере, используя только JavaScript и HTML

Хороший анекдот smile
Сам подумай:
HTML - это разметка smile Как можно с ее помощью выполнять запросы (не учитывая косвенную роль)?!
JS - клиентский язык - а для связи с сервером нужен серверный!
PM MAIL WWW ICQ Skype   Вверх
Ignat
Дата 18.5.2005, 21:53 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Флудератор
****


Профиль
Группа: Экс. модератор
Сообщений: 4030
Регистрация: 19.4.2004
Где: غيليندزيك مدينة

Репутация: нет
Всего: 73



По теме, но не в тему...


Цитата(Aliance @ 18.5.2005, 22:20)
JS - клиентский язык

ASP-шный JavaScript никто не отменял.

Можно использовать данную связку ASP+Mysql, но хостинг дороже будет, и, ИМХО, сложнее, чем PHP.




--------------------
Теперь при чем :P
PM   Вверх
Sardar
Дата 18.5.2005, 23:39 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бегун
****


Профиль
Группа: Модератор
Сообщений: 6986
Регистрация: 19.4.2002
Где: Нидерланды, Groni ngen

Репутация: 78
Всего: 317



Чисто теоретически можно заюзать ODBC коннект к БД, попытаться дёргать запросы, НО я такого еще не видел и тебе потребуеться масса прав. Другими словами это возможно для интранет приложения, но в и-нете такое не прокатит.

Выход(не красивый): пишем простой скриптик на сервере, который будет посылать твои запросы на БД. Запросы формируешь на клиенте, отсылаешь текстом, получаешь назад XML, далее DOM + XPath тебе товарищи. Хороши бы в скриптик на сервере сессии и авторизацию с ограничением прав сделать, иначе совсем левые запросы отовсех получать будет.

Выхо(правильный): пишем нормальную серверную сторону. Клиент опрашивает сервер и ничего не знает о SQL и т.п. В ответ получает XML.

Коммуникации с сервером сейчас модно делать на XMLHTTPRequest.


--------------------
 Опыт - сын ошибок трудных  © А. С. Пушкин
 Процесс написания своего велосипеда повышает профессиональный уровень программиста. © Opik
 Оценить мои качества можно тут.
PM   Вверх
December
Дата 18.5.2005, 23:45 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Antitheorist
****


Профиль
Группа: Участник
Сообщений: 4423
Регистрация: 14.8.2002
Где: Харьков

Репутация: нет
Всего: 57



Цитата(Aliance @ 18.5.2005, 21:20)
Хороший анекдот
Сам подумай:
HTML - это разметка  Как можно с ее помощью выполнять запросы (не учитывая косвенную роль)?!

Очень просто. Передавая кверю в URL'e как параметр.

Цитата(Ignat @ 18.5.2005, 21:53)
ASP-шный JavaScript никто не отменял

Не, хостинг уже есть, на никсах. С АСП разбираться тоже в лом smile

Перефразируем задачу.
Есть ли какой-нибудь способ что-нибудь залить на сервер, типа интерперетатора запросов, чтоб потом к нему обращаться и от него получать ответ? Например, давать запрос с параметром SELECT FROM а в ответ получать страничку с <table>?


--------------------
Для друзей с винграда - скидки на разработку сайтов
PM MAIL WWW ICQ   Вверх
Sardar
Дата 19.5.2005, 00:18 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бегун
****


Профиль
Группа: Модератор
Сообщений: 6986
Регистрация: 19.4.2002
Где: Нидерланды, Groni ngen

Репутация: 78
Всего: 317



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

Если первое, то за 5 минут на кидаю включая API для клиента на JS.


--------------------
 Опыт - сын ошибок трудных  © А. С. Пушкин
 Процесс написания своего велосипеда повышает профессиональный уровень программиста. © Opik
 Оценить мои качества можно тут.
PM   Вверх
December
Дата 19.5.2005, 08:46 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Antitheorist
****


Профиль
Группа: Участник
Сообщений: 4423
Регистрация: 14.8.2002
Где: Харьков

Репутация: нет
Всего: 57



Sardar
Нет, никакой авторизационной системы - вообще. Есть логин+пасс, их даже шифровать не надо. Всё ОЧЕНЬ просто. Решаемые задачи, например, такие:
1) реализовать счётчик посещений
2) простейший журнал работы (timestamp обращения к странице + какая-то ID информация)
То есть совершенно тривиальные (по крайней мере, ч точки зрения SQL) задачи.
Цитата(Sardar @ 19.5.2005, 00:18)
Если первое, то за 5 минут на кидаю включая API для клиента на JS.

Буду очень благодарен, если нарисуешь это. Хостинг на SuSe. Есть PHP и Perl.


--------------------
Для друзей с винграда - скидки на разработку сайтов
PM MAIL WWW ICQ   Вверх
Alx
Дата 19.5.2005, 21:24 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Ajaxy
****


Профиль
Группа: Комодератор
Сообщений: 2903
Регистрация: 26.11.2003
Где: Cutopia

Репутация: 10
Всего: 78



December
юзай не mysql, а че-нить попроще. для ИЕ я писал статейку про CSV. ( http://forum.vingrad.ru/index.php?showtopic=34883&hl=excel )

а все-таки лучше выучить хоть чуть-чуть PHP...


--------------------
PM MAIL WWW ICQ   Вверх
December
Дата 19.5.2005, 23:36 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Antitheorist
****


Профиль
Группа: Участник
Сообщений: 4423
Регистрация: 14.8.2002
Где: Харьков

Репутация: нет
Всего: 57



Цитата
юзай не mysql, а че-нить попроще.

Куда уж проще!!! Если стоит выбор между MySQL и Postgre, то я выбираю MySQL, потому что с этой базой я знаком довольно близко, а в Постгри меня ничто не привлекает.
ЗЫ Какой, к дьяволу, Excel на Линуксе? smile


--------------------
Для друзей с винграда - скидки на разработку сайтов
PM MAIL WWW ICQ   Вверх
Sardar
Дата 20.5.2005, 13:18 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бегун
****


Профиль
Группа: Модератор
Сообщений: 6986
Регистрация: 19.4.2002
Где: Нидерланды, Groni ngen

Репутация: 78
Всего: 317



М
 
Alx хватит флемить!

Цитата(December @ 19.5.2005, 07:46)
1) реализовать счётчик посещений
2) простейший журнал работы (timestamp обращения к странице + какая-то ID информация)

Это легко реализуеться на PHP, к тому же множество готовых примеров, на http://hotscripts.net найдёшь что угодно хоть на Perl, хоть на PHP.

December тебе вообще любые SQL на сервер посылать или всё таки есть какой то определённый список? Ну не могу я поверить что ты хочешь для всего мира открыть свою БД... smile
Вчера по моему форум лежал, не мог запостить код, вечером выложу. Но нужно ли это еще?


--------------------
 Опыт - сын ошибок трудных  © А. С. Пушкин
 Процесс написания своего велосипеда повышает профессиональный уровень программиста. © Opik
 Оценить мои качества можно тут.
PM   Вверх
December
Дата 20.5.2005, 15:11 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Antitheorist
****


Профиль
Группа: Участник
Сообщений: 4423
Регистрация: 14.8.2002
Где: Харьков

Репутация: нет
Всего: 57



Цитата(Sardar @ 20.5.2005, 13:18)
December тебе вообще любые SQL на сервер посылать или всё таки есть какой то определённый список? Ну не могу я поверить что ты хочешь для всего мира открыть свою БД...

Ну, давай посмотрим на практическом примере smile
Допустим, я хочу реализовать счётчик посещений. Для этого мне нужно иметь права на UPDATE в определённой таблице.
Или для лога посещений мне нужен INSERT.
Само собой, SELECT...
У меня изначально урезанные права - я владею не всем сервером, всего лишь купил хостинг на нём. Я могу создать 10 датабазов. Так что злоумышленник сильно не поживится smile
Единственное, на что, возможно, имеет смысл надстроить авторизацию - это DDL. Но поскольку я не имею даже смутного понятия, как в PHP реализуется авторизация, я не могу предложить никаких вариантов аутентификации...

Цитата(Sardar @ 20.5.2005, 13:18)
Вчера по моему форум лежал, не мог запостить код, вечером выложу. Но нужно ли это еще?

Да! Нужно, и скорее всего, ещё потом потребуется первоначальная помощь в освоении.

Цитата(Sardar @ 20.5.2005, 13:18)
Это легко реализуеться на PHP, к тому же множество готовых примеров, на http://hotscripts.net найдёшь что угодно хоть на Perl, хоть на PHP.

Хочется начать с чего-то очень простого, поскольку задача не приоритетная, и времени на неё выделено - ноль целых фиг десятых smile


--------------------
Для друзей с винграда - скидки на разработку сайтов
PM MAIL WWW ICQ   Вверх
Sardar
Дата 4.6.2005, 01:00 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бегун
****


Профиль
Группа: Модератор
Сообщений: 6986
Регистрация: 19.4.2002
Где: Нидерланды, Groni ngen

Репутация: 78
Всего: 317



December, я увлёкся реализацией JSInteractiveRequest, идея вышедшая из этого топика, хорошо что напомнил smile

И так вопрос: как посылать запросы к SQL серверу из бродилки на JavaScript?
Ответ: никак, но можно посылать запросы на сервер, а тот в свою очередь перенаправит их куда нужно и сформирует ответ.
Замечание: естественно реализовав такое мы делаем огромную дыру в безопасности, сервак будет слушать запросы со всего мира smile Смысл этого кода потестить работу JSInteractiveRequest, а не юзать в реальном проекте(ну только если вы не сумасшедший оптимист, считающий что БД всему миру открыть можно smile )

В прикреплённом архиве весь код. Для того что бы всё работало у вас должен стоять сервер, PHP и MySQL. Открываем server.php меняем логин, пароль и имя БД на ваши.

Из браузера открываем index.htm, пишем любой запрос в текстовое полё, жмём кнопку.
Внимание: любой запрос означет любой который позволяют ваши права, другими словами по неосторожности и базу снести можно smile

Код очень прост, где не ясно коментировал. JSInteractiveRequest описан в разделе Наши скрипты.

December по поводу счётчика и журнала. Счётчик можно сделать простой однопиксельной картинкой, которую будет выдавать скриптом. Скрипт регистрирует обращение к серверу и сохраняет в логах. По сети куча примеров, в буквальном смысле 20 строк.

Журнал уже интересней, опиши подробней. Только это не JS, а скорее серверный скрипт что ты будешь юзать, т.е. другой раздел.

Присоединённый файл ( Кол-во скачиваний: 16 )
Присоединённый файл  export.rar 8,77 Kb


--------------------
 Опыт - сын ошибок трудных  © А. С. Пушкин
 Процесс написания своего велосипеда повышает профессиональный уровень программиста. © Opik
 Оценить мои качества можно тут.
PM   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Форум для вопросов, которые имеются в справочниках, но их поиск вызвал затруднения, или для разработчика требуется совет или просьба отыскать ошибку. Напоминаем: 1) чётко формулируйте вопрос, 2) приведите пример того, что уже сделано, 3) укажите явно, нужен работающий пример или подсказка о том, где найти информацию.
 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | JavaScript: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.0657 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.