Наши проекты:
Журнал · Discuz!ML · Wiki · DRKB · Помощь проекту |
||
ПРАВИЛА | FAQ | Помощь | Поиск | Участники | Календарь | Избранное | RSS |
[18.224.136.125] |
|
Сообщ.
#1
,
|
|
|
Здравствуйте.
Autorizer_form.php, DB_module.php, Main_form.php (в порядке создания). В DB_module есть функция function GetDB_module() { global $DB_module; return $DB_module; } В Autorizer_form есть функция function bt_okClick($sender, $params) { try { $usr = $this->le_usr->Text; $pwd = $this->le_pwd->Text; $DB_con = GetDB_module()->Hostel_con; $DB_con->UserName = $usr; $DB_con->UserPassword = $pwd; $DB_con->Connected = true; setcookie('usr', $usr); setcookie('pwd', $pwd); redirect("Main_form.php"); } catch (Exception $e) { echo "Ошибка"; echo $e; } } В Main_form есть функция function bt_facultetClick($sender, $params) { $usr = $_COOKIE['usr']; $pwd = $_COOKIE['pwd']; try { $Q_fac = GetDB_module()->Q_facultet; if (isset($Q_fac)) $Q_fac->Open(); else echo "Error Q_fac"; } catch (Exception $e) { echo "Ошибка"; echo $e; } } В DB_module: Q_facultet это IBQuery, Hostel_con это IBDatabase. Проблема заключается в том, что из первой формы получение объектов DB_modul'я с помощью функции GetDB_module() происходит корректно. А из Main_form получаю NULL. У обоих форм стоит require_once("DB_Module.php"); Есть какие-нить соображения или наставления, уважаемые? |
Сообщ.
#2
,
|
|
|
прикрепи полный пример. просто из этого мало что понятно.
|
Сообщ.
#3
,
|
|
|
для начала уровняй пример
т.е. вызови тот же объект и тем же кодом что и в работающем модуле |
Сообщ.
#4
,
|
|
|
Цитата vicis @ для начала уровняй пример т.е. вызови тот же объект и тем же кодом что и в работающем модуле Это уже пробовал, результат отрицательный. Цитата ViktorXP @ прикрепи полный пример. просто из этого мало что понятно. Пример прикреплен. Прикреплённый файл2.zip (4.23 Кбайт, скачиваний: 93) |
Сообщ.
#5
,
|
|
|
Ни у кого нет соображений? Может это глюк D4php? Или что нить еще?
|
Сообщ.
#6
,
|
|
|
у меня в обоих модулях дало результат null
а ошибка банальная. Регистры букв function GetDB_module() { global $DB_Module; // было DB_module return $DB_Module; // было DB_module } |
Сообщ.
#7
,
|
|
|
Цитата ViktorXP @ Спасибо! Как делфист, я не различаю регистр, и как правило - забыл... |
Сообщ.
#8
,
|
|
|
Цитата Gluckodrom @ Спасибо! Как делфист, я не различаю регистр, и как правило - забыл... бывает помогает копирование - точно не промажеш |
Сообщ.
#9
,
|
|
|
Теперь не могу изменить высоту и ширину компонента Window через js.
Делаю и так: document.getElementById("Window1").Height = 600; document.getElementById("Window1").Width = 800; ... и так... document.getElementById("Window1").style.Height = 600; document.getElementById("Window1").style.Width = 800; и уже с бубном начал танцевать, используя DialogHeight. Но ничего не получилось. И еще второй вопрос /сразу же здесь задам/: как получить сообщение об ошибке в случае ошибки хранимой процедуры, которое выдает сама база (триггер, exception)? |
Сообщ.
#10
,
|
|
|
Цитата Gluckodrom @ Теперь не могу изменить высоту и ширину компонента Window через js. function Button2JSClick($sender, $params) { ?> //Add your javascript code here Window1.setWidth(300); Window1.setTop(3); <?php } Цитата Gluckodrom @ И еще второй вопрос /сразу же здесь задам/: как получить сообщение об ошибке в случае ошибки хранимой процедуры, которое выдает сама база (триггер, exception)? а твой код из этого сообщения Синтаксис SQL запроса с параметром (сообщение #2565397) не проходит ? здесь ещё посмотри http://forums.delphi-php.net/embarcadero-public-delphiphp-database/4600-check-if-database-component-connected.html |
Сообщ.
#11
,
|
|
|
Цитата vicis @ Window1.setWidth(300); Благодарствую за подсказку! как ты смотришь доступные свойства/методы? или на угад?! Цитата vicis @ а твой код не проходит ? Нет, он выводит ВСЮ огромную ошибку, и там просто каша. Цитата vicis @ здесь ещё посмотри http://forums.delphi-php.net/embarcadero-p...-connected.html Самое оно! В точку! Спасибо! catch (EDatabaseError $e) |
Сообщ.
#12
,
|
|
|
Цитата Gluckodrom @ как ты смотришь доступные свойства/методы? или на угад?! можно наугад например, если просто поставить на форму компонент Window и на него Memo а потом посмотреть исходный код страницы в браузере то можно найти немало познавательного (объект же как то создаётся и позицирнируется при этом) <script type="text/javascript"> var d = qx.ui.core.ClientDocument.getInstance(); var Window1 = new qx.ui.window.Window("Window1", "icon/16/apps/accessories-disk-usage.png"); Window1.setLocation(165, 173); Window1.setWidth(355); Window1.setHeight(267); Window1.setModal(false); Window1.setResizeable(true); Window1.setMoveable(true); Window1.setMoveMethod("opaque"); Window1.setResizeMethod("frame"); Window1.setShowClose(true); Window1.setShowMinimize(true); Window1.setShowMaximize(true); Window1.setShowIcon(true); Window1.setShowCaption(true); Window1.setShowStatusbar(false); var container = new qx.ui.basic.Atom("<textarea id=\"Memo1\" name=\"Memo1\" style=\" font-family: Verdana; font-size: 10px; height:88px;width:185px;\" tabindex=\"0\" wrap=\"virtual\"></textarea>"); container.setLeft(93); container.setTop(41); container.setWidth(185); container.setHeight(89); Window1.add(container); container.addEventListener("appear", function(e) { }, container); d.add(Window1) Window1.open(); </script> ну и более правильный путь - открыть мурзилку с описанием API т.к. компонент наш создан на базе qx (это видно по данной строке ... var d = qx.ui.core.ClientDocument.getInstance(); ... ) то это значит, что искать нужно на сайте http://qooxdoo.org а это уже поиском в интернете или почитать в описании DelphiForPhp что за библиотеки используются на сайте же http://qooxdoo.org ищем описание API находим здесь http://demo.qooxdoo.org/current/apiviewer/#qx вводим там в интерфейсе в поиск строку qx.ui.window.Window (см код выше) видим результат поиска и тыкаем в него получаем страницу с методами и другой информацией ищем функцию похожую на установку ширины (включаем интуицию) находим много вкусных функций, но нашей нет тогда переходим к предкам трусим их с пристрастием первый там qx.ui.core.Widget много интересных функций, конспектируем на будущее, но нашей опять нет пытаем следующего и опа... у товарища qx.ui.core.LayoutItem есть нужная функция setWidth(x); проверяем - работает контрольный выстрел: setMinWidth(Integer value) - установка минимальной ширины, тип а Constraints в Delphi работает... |