The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]

форумы  помощь  поиск  регистрация  майллист  ВХОД  слежка  RSS
"не работает pg_pconnect! он вобще рабочий?"
Вариант для распечатки Архивированная нить - только для чтения! 
Пред. тема | След. тема 
Форумы Программирование под UNIX (Public)
Изначальное сообщение [Проследить за развитием треда]

"не работает pg_pconnect! он вобще рабочий?"
Сообщение от sector119 emailИскать по авторуВ закладки on 27-Дек-02, 11:58  (MSK)
Что надо сделать что-бы он заработал! я вот передрал два скрипта из книги по посгтресу специально, что-бы так сказать устранить свои ошибки

и не пашет
в php.ini разрешены постоянные соединения и ограничений никаких нет!


<?                                                                              
echo "<html><body>\n";                                                          
$db = pg_pconnect("dbname=$dbname user=$user password=$dbpassword");            
if (!$db)                                                                      
    echo "Connection can not be established!<br>\n";                            
else                                                                            
    echo "Connection established!<br>\n";                                      
echo "<a href=\"cursor4.php\">next screen</a><br>";                            
echo "</body></html>";                                                          
?>

<?                                                                              
echo "<html><body>\n";                                                          
if ($db)                                                                        
    echo "db handler is still valid!<br>\n";                                    
else                                                                            
    echo "db handler does not exist anymore!<br>\n";                            
echo "</body></html>";                                                          
?>

при переходи от скрипта к скрипту выдает db handler does not exist anymore!

ПОЧЕМУ??? так ВЕДЬ НЕ ДОЛЖНО БЫТЬ???

  Рекомендовать в FAQ | Cообщить модератору | Наверх

 Оглавление

Индекс форумов | Темы | Пред. тема | След. тема
Сообщения по теме

1. "RE: не работает pg_pconnect! он вобще рабочий?"
Сообщение от uldus Искать по авторуВ закладки on 27-Дек-02, 13:24  (MSK)
>при переходи от скрипта к скрипту выдает db handler does not exist
>anymore!

В каждом скрипте должен присутствовать вызов pg_pconnect, а не один на все, плюс само собой PHP как apache модуль.

  Рекомендовать в FAQ | Cообщить модератору | Наверх

2. "RE: не работает pg_pconnect! он вобще рабочий?"
Сообщение от sector119 emailИскать по авторуВ закладки on 27-Дек-02, 13:29  (MSK)
<?                                                                              
$db = pg_pconnect("dbname=$dbname user=$user password=$dbpassword");            
if (!$db)                                                                      
    echo "Connection can not be established!<br>\n";                            
else                                                                            
    echo "Connection established!<br>\n";                                      
                                                                                
echo bin2hex($db) . "<br>\n";                                                  
                                                                                
if (!isset($level))                                                            
    pg_exec($db, "BEGIN WORK");                                                
                                                                                
pg_exec($db, "INSERT INTO test2 (body) VALUES ('qwerty')");                    
?>


хорошо! вот теперь такой пример! мной было прочитано в книге что при завершении скрипта при постоянном соединении транзакция не должна завершаться, т.е. не комититься ни ролбек делаться не должен! первый раз запускаю скрипт без параметра level открывается транзакция! потом делается инсерт! делаю запрос к базе, смотрю появились ли какие-то записи! их нет, как и должно быть! запускаю снова скрипт но уже с параметром level=bla_bla т.е. транзакция не начинается а инсерт всеравно должен делаться! он делается! смотрю в базу там появляется только результат второго инсерта, первого там нет!!!! почему? вобще не должно быть там ничего ни результата первого, ни второго инсерта т.к. я не сделал COMMIT!!

вот мне это и интересно! я так понимаю что при втором запуске скрипта сделался автоматом ROLLBACK и транзакция была прибита! почему так происходит? ведь транзакция должна была сохраниться!?
это что, очередной рассказ? или я снова не так понял как что-то работает!?

Спасибо!

  Рекомендовать в FAQ | Cообщить модератору | Наверх

3. "RE: не работает pg_pconnect! он вобще рабочий?"
Сообщение от uldus Искать по авторуВ закладки on 27-Дек-02, 14:17  (MSK)
>ведь транзакция должна была сохраниться!?
>это что, очередной рассказ? или я снова не так понял как что-то
>работает!?

Думаю что PHP поступает абсолютно верно, привязывая транзакцию к одному запуску скрипта:

.......
zend_hash_apply(&EG(persistent_list),                                          (apply_func_t) _rollback_transactions TSRMLS_CC);
........

  Рекомендовать в FAQ | Cообщить модератору | Наверх


Удалить

Индекс форумов | Темы | Пред. тема | След. тема
Пожалуйста, прежде чем написать сообщение, ознакомьтесь с данными рекомендациями.




Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2025 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру