Ru-Board.club
← Вернуться в раздел «Программы»

» Delphi for PHP

Автор: fandm
Дата сообщения: 10.05.2007 15:10
xRay
Я сделал точно также и тем не менее... ничего не появилось само...
Автор: dmitry1973
Дата сообщения: 11.05.2007 12:48
Прошу прощения за вопрос, может быть не по адресу,
но может кто то подскажет:
как отловить изменение размеров окна и
перестроить размеры элементов, так чтобы их размеры
не вылазили за края окна.
Автор: fandm
Дата сообщения: 13.05.2007 23:22
dmitry1973

1. Кидаем на форму куда-нибудь Button1, ставим ему свойство ButtonType = btNormal (чтобы Submit не отрабатывал по клику), задаём размеры Height = 1 и Width = 1 (чтобы не было видно. Visible = false здесь не катит, т.к. в этом случае все обработчики JavaScript событий просто не попадут в html-результат, а нам этого не надо Нулевые размеры ставить тоже нельзя, как оказалось, т.к. в результате кнопка будет иметь размеры аля Default).
2. На JavaScript событие OnClick для Button1 пишем код, изменяющий размеры контролов:
PageControl1.setWidth(document.body.clientWidth - 204);
PageControl1.setHeight(document.body.clientHeight - 25 - 2);
DBGrid1.setWidth(document.body.clientWidth - 204);
DBGrid1.setHeight(document.body.clientHeight - 90 - 21);
ToolBar1.setWidth(document.body.clientWidth - 204 - 190);
TreeView1.setHeight(document.body.clientHeight - 54 - 2);
(здесь каждый шаманит согласно фантазии )
3. На JavaScript событие OnLoad страницы пишем:
window.onresize = Button1JSClick;
Тобишь перенаправляем событие изменения размеров окна на клик по кнопке Button1.
4. А, чтобы у нас при первом же отображении страницы размеры контролов были приведены к нужным размерам, на событие OnAfterShowFooter страницы пишем код:
echo('<script type="text/javascript">Button1JSClick();</script>');
Это вставит в самом конце страницы вызов Button1JSClick. А, т.к. к этому моменту уже все контролы подгрузятся, то их размеры изменятся так, как нам надо

У меня такой подход работает на ура. Пробуй
Автор: dmitry1973
Дата сообщения: 14.05.2007 07:53

Цитата:
fandm

Спасибо большое. Сейчас буду пробовать.
Автор: VitGin
Дата сообщения: 14.05.2007 18:28
А кто-нибудь пробовал ставить сторонние PEAR-пакеты? Их нужно адаптировать или нет? Я просто попытался поставить пакет Tree http://www.pear.php.net/package/Tree
И ничего у меня не вышло. При попытке добавить компонент на форму лезут ошибки "Class DBTree not found". Никто не знает вообще возможно заставить работать пакеты PEAR с Delphi for PHP?
Автор: xRay
Дата сообщения: 15.05.2007 01:43
VitGin
ну есть же пример как DBGrid PEAR сдеали вот по нему и надо смотреть
а просто кинуть пакет из PEAR не выйдет
там нужно обвязку написать т.е. чтобы с VCL билиотекой связать

Вы мне вот лучше скажите у кого ин будь получается запускать проекты сделаные в этой Delphi for PHP на реальном хостинге с Апачем 2-ым а не на самом Delphi for PHP?
Автор: dmitry1973
Дата сообщения: 15.05.2007 07:59

Цитата:
Вы мне вот лучше скажите у кого ин будь получается запускать проекты сделаные в этой Delphi for PHP на реальном хостинге с Апачем 2-ым а не на самом Delphi for PHP?

Попробовал - них.. (ничего) пока не получается. Проект работает через MySQL с данными, так вот каково же было мое удивление когда я сделал почти все, перенес командой "Tools->DeploymentWizard" куда надо, а он как начал давать ошибки в компонентах работы с данными (Table, Repeater), а вот Query нормально себя ведет.
Мне кажется все-таки CodeGear поспешили с выпуском.


Цитата:
fandm

А у меня такой подход не работает. Может где-то какие-то флаги не установил или
не в том месте обработки поставил, можеш на почту кинуть одну форму которая у тебя работает, буду очень признателен.

Добавлено:
почта : _dmitry1973@mail.ru
Автор: VitGin
Дата сообщения: 15.05.2007 08:25

Цитата:
ну есть же пример как DBGrid PEAR сдеали вот по нему и надо смотреть
а просто кинуть пакет из PEAR не выйдет
там нужно обвязку написать т.е. чтобы с VCL билиотекой связать


Мдя.... я смотрел код peardatagrid.inc.php там они чего-то прикрутили....но чего и зачем....непонятно. Так что с выпуском они явно поспешили. Эту шутуку еще рихтовать и рихтовать напильником. Была бы она OpenSource - я бы понял, но коммерческий продукт....
Автор: xRay
Дата сообщения: 15.05.2007 10:37
dmitry1973

Цитата:
Попробовал - них.. (ничего) пока не получается.

угу у меня пока так же, но буду продолжать попытки
что уж горить о том чо нет поддежки 4-го PHP
Автор: IIISharkIII
Дата сообщения: 15.05.2007 14:36
В отладчике не работает простейший код.

Код:
<HTML>
<HEAD>
</HEAD>
<BODY>
<form action="param.php" method="get">
Имя пользователя: <input name="UserName">
</form>
<?php
if ($UserName<>"")
{
print("<P>Ваше имя пользователя: " ) ;
print("$UserName") ;
}
?>
</BODY>
<HTML>
Автор: fandm
Дата сообщения: 16.05.2007 11:06
dmitry1973

Цитата:
можеш на почту кинуть одну форму которая у тебя работает


Отправил, лови

Добавлено:
xRay

Цитата:
Вы мне вот лучше скажите у кого ин будь получается запускать проекты сделаные в этой Delphi for PHP на реальном хостинге с Апачем 2-ым а не на самом Delphi for PHP?


Далеко ходить не надо... У меня вот на компе работает всё ок, а когда открываешь ссылку на любом другом компе (корпоративный intranet), то из всех объектов на странице видны от силы один два... Причём даже в IE... Это настораживает...

Добавлено:
IIISharkIII

Цитата:
В отладчике не работает простейший код.


Не совсем понял, что ты имеешь ввиду под работой в отладчике... Ты что в блокноте написал скрипт и решил скормить его отладчику Delphi for PHP??? А что такое возможно?

Я вот себе думаю, что не всё так просто

Вот пример http://www.hotfile.ru/47621/
В нём ставишь breakpoint в строке:
$this->Label2->Caption = 'Ваше имя пользователя: '.$this->Edit1->Text;
Запускаешь пример, вводишь что-нибудь, нажимаешь Enter, попадаешь на строку останова, добавляешь, к примеру, в Watches строку $this->Edit1->Text и видишь переданное значение без проблем...
Что не так?
Автор: IIISharkIII
Дата сообщения: 16.05.2007 12:40
fandm

Цитата:
Ты что в блокноте написал скрипт и решил скормить его отладчику Delphi for PHP??? А что такое возможно?

А почему нет? Пишешь в блокноте код, открываешь в Delphi for PHP, ставишь точки останова, жмешь Run и все работает... Точнее должно работать.
Вот только почему то не показывает переменные переданые из браузера.
Например такой код:

Код:
<?php
class foo
{
function do_foo()
{
echo "Doing foo.";
}
}
$bar = new foo;
$bar->do_foo();
?>
Автор: xRay
Дата сообщения: 16.05.2007 13:23
IIISharkIII

Цитата:
В данный момент меня не интересует VCL

Ну так зачем тогда в Delphi for PHP полез?
Ту ООП код писать надо вот у тебя и не пашет. Погляди в папу с примерами и станет ясно почему твое не пашет. Нужно чрез $htis обращатся к переменным и т.д.

Если нужен просто отладчик то возьми nuSphere PHPed или Zend Studio
Автор: fandm
Дата сообщения: 16.05.2007 14:30
IIISharkIII

Цитата:
Победил проблему добавив строчку


Ну дык прально

Просто то, с чем у тя проблема была никакого отношения ни к Delphi for PHP ни к её отладчику не имеет

Это чисто основы PHP. Если ты хочешь, чтобы переменные с именами такими же, как параметры формы, инициализировались автоматически, а не путём считывания массивов $_GET и $_POST, то тебе нужно в PHP.ini отредактировать параметр:
register_globals = On
вместо
register_globals = Off


Сорри за
Автор: dmitry1973
Дата сообщения: 16.05.2007 17:59

Цитата:
fandm

Спасибо ! Сейчас буду смотреть.
Автор: vvintik
Дата сообщения: 16.06.2007 12:32
Ребят, новичок... ВОпрос:
У меня есть свой Apache+Php отдельный...
Допустим на Delphi for PHP я пишу новое приложение на PHP. А дальше как мне его выложить на мой сайт? т.е. в мои папки Апача.ъ
Он ведь требует остальные юниты...
Как все правильно сделать?

И второй вопрос:
очень бы хотелось посмотреть исходный код в експлорере, обычной проги. это возможно?
Автор: valhalla
Дата сообщения: 20.06.2007 16:20
Скажите, имеется ли в этой штуке полный справочник по PHP? Чего-то не нашел его там.
И есть ли какая документация к самой проге кроме штатного хелпа?
Автор: nehalem
Дата сообщения: 05.07.2007 10:48
Что нужно чтобы запустить vcl4php под Апачем например или Small HttpServer ?
Автор: valhalla
Дата сообщения: 24.07.2007 10:17
Никто не знает, почему не работает функция htmlspecialchars ?
Такой код должен выдавать результат из комментария:

Цитата:
<?php
$new = htmlspecialchars("<a href='test'>Test</a>", ENT_QUOTES);
echo $new; // &lt;a href=&#039;test&#039;&gt;Test&lt;/a&gt;
?>

Реально выдает:

Цитата:
<a href='test'>Test</a>


P.S. Проблема разрешилась.
Скажите, а VCL - это вообще что?
Автор: wellwisher
Дата сообщения: 25.07.2007 23:03
valhalla

Цитата:
Скажите, а VCL - это вообще что?

VCl == Visual Component Library
Автор: ap7
Дата сообщения: 27.07.2007 23:06
Здравствуйте, пытаюсь запустить пример использования темпла..
Пишет вот такую хрень - Fatal error: Smarty error: [in index.html line 10]: syntax error: unrecognized tag 'var' (Smarty_Compiler.class.php, line 583) in c:\program files\CodeGear\delphi for php\1.0\vcl\smarty\libs\Smarty.class.php on line 1095

Плиз, подскажите что ему не так... Что-то совсем непонятно.

ЗЫ. vcl я обновил, думал в этом проблема - оказывается что нет...

ОГРОМНОЕ СПАСИБО!
Автор: MAX_DAMAGE
Дата сообщения: 25.10.2007 21:01
DBGrid не отображается в Firefox. Вобщем с кроссбраузерностью - траблы. Или может как-то лечится? (Update 2 не стоит)
Автор: MAX_DAMAGE
Дата сообщения: 26.10.2007 11:27
Скачал Delphi For PHP Trial Include Update 2 - один фиг. В Firefox DBGrid отказывается работать.

Видимо придеться "забить" на Delphi For PHP
Автор: SergV2005
Дата сообщения: 24.11.2007 12:14
Меня вот тоже вопрос интеррисует, может кто знает ответ?
Поставил пару дней назад этот Delphi For PHP, который скачал ещё когда толко вышел. Версия триалная, вроде работает но вот демки те что с базой работают, они не запускаются. Выдаёт что нет подключения к базе, да только где она установлена и вообще установлена ли она, непонятно. Встроенный сервер пхп работает, а базу я не нашёл. Вот и не пойму, толи криво установилось, толи ограничения триалки, толи свою базу както надо подключать.
Подскажите кто знает, ато ломаю голову, стоит ли вообще переходить на Delphi For PHP, или по старому в дремвьювере кодить.
Автор: Tulnov
Дата сообщения: 06.12.2007 09:40
04.12.2007 вышла версия 2.0.0.756, правда пока FT #
При установке просит лицензионный номер, но пускает дальше и без него.
Лечится тем же способом, что и 1.0.
Автор: mezoni
Дата сообщения: 28.01.2008 17:20
А что изменилось/добавилось в новой версии?
Автор: vicis
Дата сообщения: 21.03.2008 19:54

Цитата:
Вы мне вот лучше скажите у кого ин будь получается запускать проекты сделаные в этой Delphi for PHP на реальном хостинге с Апачем 2-ым а не на самом Delphi for PHP?

Попробовал - них.. (ничего) пока не получается. Проект работает через MySQL с данными, так вот каково же было мое удивление когда я сделал почти все, перенес командой "Tools->DeploymentWizard" куда надо, а он как начал давать ошибки в компонентах работы с данными (Table, Repeater), а вот Query нормально себя ведет.
Мне кажется все-таки CodeGear поспешили с выпуском.


У меня работает.
Было две проблемы при переносе на провайдера.
1. У провайдера небыла установлена переменная output_buffering
Проявлялось сообщением об ошибке в связи с тем что header уже послан
это решили созданием в корне папки проекта файла .htaccess и занесением в него следующих строк:
php_flag output_buffering On
php_value output_buffering 4096
проблема была видна в phpinfo()

2. У провайдера не была подключена одна из библиотек в php, которая используется в Delphi4php.
Провайдер отбрыкивался - типа всё работает.
Удалось заставить провайдера подключить библиотеку путём предоставления примера, который не работал
По phpinfo это не было видно (вроде бы), а программа говорила что функции не доступны
Пример в двух файлах:

Код: 1-й файл
<html>
<head></head>
<body >
Проверка ввода числа

<form action="example04.php" method="post" >
Enter your age: <input name="age" size="2">
<input type="submit" name="submit" value="Go">
</form>
</body>
</html>

2-й файл (example04.php)
<?php
if (!filter_has_var(INPUT_POST, 'submit')) {
echo "form";
// include the form.
}

$age = filter_input(INPUT_POST, 'age', FILTER_VALIDATE_INT);
if (is_null($age))
{
echo "Вы не ввели ничего(пустая переменная).<br />";
require_once('test1.php');
}
elseif ($age === FALSE)
{
echo "Введите число.<br />";
require_once('test1.php');
}
else

{
echo "Привет.<br/>";
echo "<a href='test1.php'>В начало</a>.<br/>";
}
?>
Автор: Yogi Bear
Дата сообщения: 11.05.2008 04:09
Подскажите как решить проблемку. Запускаю Denver в нем запускается MySQL, после чего примеры для DelphiForPHP все равно не идут, пишет что нет подключения к базе. Вроде все *.ini просмотрел, ничего не нашел. Как помирить MySQL из Denver"а и DelphiForPHP?
Автор: RGF
Дата сообщения: 03.09.2008 17:24
подключаюсь к mysql и в самой программе (dataexplorer) и в браузер вместо кирилицs utf-8 вижу вопросы и кодировка страницы в 8859-1 при наличае метатега utf-8

в свойствах database1 стоит charset utf-8
в option editor optionf аналогично utf-8

подскажите, где чего недоглядел?
Автор: hukker
Дата сообщения: 16.10.2008 20:22
Что за ошибка - '0,87' is not a valid floating point value ?
Delphi 2007 Lite, WinXP SP3

Страницы: 123

Предыдущая тема: Xfire


Форум Ru-Board.club — поднят 15-09-2016 числа. Цель - сохранить наследие старого Ru-Board, истории становления российского интернета. Сделано для людей.