Страница 1 из 1

Firebird+PHP+AdobeFlex

Добавлено: 15 янв 2011, 22:06
sdsfy
Приветствую, коллеги!

Есть идея к FB сделать клиентское кросплатформенное приложение на Adobe Flex (Flash Builder 4.0). На сколько я понимаю, Builder неплохо дружит с PHP, да и FB тоже цепляется через PHP.
Вопрос в том, как изящно реализовать механизм работы транзакций. То к чему я по своей неопытности пришел: подключение к серверу, выполнение запроса и отсоединение от сервера в теле одного скрипта.
Я сейчас прошу пока простого совета, где почитать нужную информацию, чтоб побыстрей придти к пониманию процесса реализации скрипта для последующего его цепляния к Flex.

Заранее спасибо!

Re: Firebird+PHP+AdobeFlex

Добавлено: 16 янв 2011, 14:36
Dimitry Sibiryakov
Ты удивишься, но это на http://ibase.ru

Re: Firebird+PHP+AdobeFlex

Добавлено: 16 янв 2011, 15:04
sdsfy
Dimitry Sibiryakov писал(а):Ты удивишься, но это на http://ibase.ru
Удивлюсь, поиск по нехитрым 3-м буквам PHP вообще ничего не дал... а как я понимаю, в этом всем, это ключевое звено.

Ссылочу можешь кинуть на ветку, в которой ведется обсуждение? Возможно я разучился искать.

Re: Firebird+PHP+AdobeFlex

Добавлено: 17 янв 2011, 14:39
Dimitry Sibiryakov

Re: Firebird+PHP+AdobeFlex

Добавлено: 19 янв 2011, 13:58
kdv
у меня про php могут быть только ссылки.
Вообще я сомневаюсь, что в php можно "изящно управлять транзакциями". Здесь нужно смотреть документацию на php.

Re: Firebird+PHP+AdobeFlex

Добавлено: 29 янв 2011, 18:21
sdsfy
kdv писал(а):у меня про php могут быть только ссылки.
Вообще я сомневаюсь, что в php можно "изящно управлять транзакциями". Здесь нужно смотреть документацию на php.
Спасибо! Да, судя по всему, с транзакциями под PHP будет не так изящно... но, в целом, документация по PHP показывает, что это все реально.
http://ru.php.net/manual/en/book.ibase.php
Нашел все, что искал.. Верней, пока хватает.

Если какие любопытные моменты будут по теме, буду выкладывать в данную ветку.

Re: Firebird+PHP+AdobeFlex

Добавлено: 01 фев 2011, 19:44
noisy
PHP хорошо справляется с транзакциями.
Функция ibase_trans. возможны параметры IBASE_READ, IBASE_WRITE, IBASE_COMMITTED, IBASE_CONSISTENCY, IBASE_CONCURRENCY, IBASE_REC_VERSION, IBASE_REC_NO_VERSION, IBASE_WAIT and IBASE_NOWAIT

и совет. не нужно пользоваться IBASE_DEFAULT. будет часто проблема deadlock.

Код: Выделить всё

            
$transaction = ibase_trans(IBASE_READ + IBASE_REC_NO_VERSION + IBASE_NOWAIT, $this->session);
$statement = ibase_query($transaction, $sql);
$result = array();
$i = 0;
while ($row = ibase_fetch_assoc($statement)) { 
    $result[$i] = $row;
    $i++;
} 
ibase_free_result($statement);
ibase_rollback($transaction);

Re: Firebird+PHP+AdobeFlex

Добавлено: 02 фев 2011, 14:19
Dimitry Sibiryakov
Ещё совет: не надо пользоваться REC_NO_VERSION.

Re: Firebird+PHP+AdobeFlex

Добавлено: 07 фев 2011, 11:14
kdv
ну и еще совет - не указаны IBASE_COMMITTED, IBASE_CONSISTENCY или IBASE_CONCURRENCY, поэтому непонятно, куда пойдет IBASE_REC_NO_VERSION, т.к. я не в курсе, что там по умолчанию у php. у IB API если ничего не указать, будет CONCURRENCY, т.е. snapshot.