Форум программистов
 
О проблемах с регистрацией пишите сюда - alarforum@yandex.ru, проверяйте папку спам! Обязательно пройдите активизацию e-mail, а тут можно восстановить пароль.

Вернуться   Форум программистов > Web программирование > JavaScript, Ajax
Регистрация

Восстановить пароль
Повторная активизация e-mail


Ответ
 
Опции темы
Старый 18.08.2010, 11:35   #1
gred
Пока ещё
Форумчанин
 
Аватар для gred
 
Регистрация: 26.02.2008
Сообщений: 116
По умолчанию Работа с базой данных через Javascript?

Возможно ли такое?
И второй вопрос подскажите что делает этот скрип?
Хотя бы приблизительно
Буду очень благодарен
Код HTML:
<script type="text/javascript">
<!--
    var dbBoxSetupDone = false;
    function dbBoxSetup() {
        if (dbBoxSetupDone != true) {
            if (parent.frames.queryframe && parent.frames.queryframe.document.left && parent.frames.queryframe.document.left.lightm_db) {
                parent.frames.queryframe.document.left.lightm_db.value = 'cec-mc';
                dbBoxSetupDone = true;
            } else {
                setTimeout("dbBoxSetup();",500);
            }
        }		
    }
    if (parent.frames.queryframe && parent.frames.queryframe.document && parent.frames.queryframe.document.queryframeform) {
        parent.frames.queryframe.document.queryframeform.db.value = "cec-mc";
        parent.frames.queryframe.document.queryframeform.table.value = "Warehouse";
    }
    if (parent.frames.queryframe && parent.frames.queryframe.document && parent.frames.queryframe.document.left && parent.frames.queryframe.document.left.lightm_db) {
        selidx = parent.frames.queryframe.document.left.lightm_db.selectedIndex;
        if (parent.frames.queryframe.document.left.lightm_db.options[selidx].value == "cec-mc") {
            parent.frames.queryframe.document.left.lightm_db.options[selidx].text = "cec-mc (91)";
        } else {
            parent.frames.queryframe.location.reload();
            setTimeout("dbBoxSetup();",2000);
        }
    }
    
    function reload_querywindow () {
        if (parent.frames.queryframe && parent.frames.queryframe.querywindow && !parent.frames.queryframe.querywindow.closed && parent.frames.queryframe.querywindow.location) {
                        if (!parent.frames.queryframe.querywindow.document.sqlform.LockFromUpdate || !parent.frames.queryframe.querywindow.document.sqlform.LockFromUpdate.checked) {
                parent.frames.queryframe.querywindow.document.querywindow.db.value = "cec-mc";
                parent.frames.queryframe.querywindow.document.querywindow.query_history_latest_db.value = "cec-mc";
                parent.frames.queryframe.querywindow.document.querywindow.table.value = "Warehouse";
                parent.frames.queryframe.querywindow.document.querywindow.query_history_latest_table.value = "Warehouse";

                // no sql query update

                parent.frames.queryframe.querywindow.document.querywindow.submit();
            }
                    }
    }

    function focus_querywindow(sql_query) {
        if (parent.frames.queryframe && parent.frames.queryframe.querywindow && !parent.frames.queryframe.querywindow.closed && parent.frames.queryframe.querywindow.location) {
            if (parent.frames.queryframe.querywindow.document.querywindow.querydisplay_tab != 'sql') {
                parent.frames.queryframe.querywindow.document.querywindow.querydisplay_tab.value = "sql";
                parent.frames.queryframe.querywindow.document.querywindow.query_history_latest.value = sql_query;
                parent.frames.queryframe.querywindow.document.querywindow.submit();
                parent.frames.queryframe.querywindow.focus();
            } else {
                parent.frames.queryframe.querywindow.focus();
            }

            return false;
        } else if (parent.frames.queryframe) {
            new_win_url = 'querywindow.php?sql_query=' + sql_query + '&lang=ru-win1251&server=1&db=cec-mc&table=Warehouse';
            parent.frames.queryframe.querywindow=window.open(new_win_url, '','toolbar=0,location=0,directories=0,status=1,menubar=0,scrollbars=yes,resizable=yes,width=550,height=310');

            if (!parent.frames.queryframe.querywindow.opener) {
               parent.frames.queryframe.querywindow.opener = parent.frames.queryframe;
            }

            // reload_querywindow();
            return false;
        }
    }

    reload_querywindow();

//-->
</script>
Я мегапрограммер потерявший память.
Если кому помог, поставте '+' я буду благодарен
gred вне форума Ответить с цитированием
Старый 19.08.2010, 17:48   #2
motorway
Участник клуба
 
Регистрация: 28.06.2009
Сообщений: 1,950
По умолчанию

Посылать запросы к базе возможно через Яваскрипт. Но все остальное должен делать серверный скрипт
motorway вне форума Ответить с цитированием
Старый 19.08.2010, 19:54   #3
Виталий Желтяков
Старожил
 
Аватар для Виталий Желтяков
 
Регистрация: 19.04.2010
Сообщений: 2,672
По умолчанию

Напрямую нельзя.
В вашем примере JS формирует запрос к файлу querywindow.php, который скорее всего и оперирует с БД.
Виталий Желтяков вне форума Ответить с цитированием
Старый 19.08.2010, 22:25   #4
gred
Пока ещё
Форумчанин
 
Аватар для gred
 
Регистрация: 26.02.2008
Сообщений: 116
По умолчанию

Спс за ответы.
А можно поподробнее... что делает скрипт который я выложил?
Я мегапрограммер потерявший память.
Если кому помог, поставте '+' я буду благодарен
gred вне форума Ответить с цитированием
Старый 20.08.2010, 06:49   #5
Виталий Желтяков
Старожил
 
Аватар для Виталий Желтяков
 
Регистрация: 19.04.2010
Сообщений: 2,672
По умолчанию

Ну, точно Вам можно ответить, если дадите основную страницу. В общем происходит следующие:
- Собираются данные sql запроса. Как Я понимаю, данные берутся с формы, там два альтернативных варианта.
- Формируется запрос на сервер,
- Полученный результат открывается в окне.

Если честно, сделано как-то по глупому. Лучше бы было если использовали технологию ajax.
Виталий Желтяков вне форума Ответить с цитированием
Ответ
Купить рекламу на форуме от 7000 рублей в месяц



Опции темы


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Работа с базой MS Access через FTP GREMI БД в Delphi 4 27.08.2009 12:51
Работа Delphi7 с базой данных paradox valetip БД в Delphi 2 15.05.2009 16:47
Как можно соединица со своей базой данных в интернете через ADO? dj kisel' БД в Delphi 0 26.05.2008 22:11
Работа с базой данных Dizark Помощь студентам 1 01.03.2008 20:30


Проекты отопления, пеллетные котлы, бойлеры, радиаторы
интернет магазин respective.ru
Пеллетный котёл Emtas
котлы EMTAS