Codeigniter $ this-> db-> trans_begin (); если не зафиксировано или отменено и страница обновлена, она блокирует базу данных - PullRequest
2 голосов
/ 27 февраля 2012

У меня есть страница, где используется $this->db->trans_begin();, и некоторые вставки сделаны. Затем модальное окно открывается и просит пользователя подтвердить, и если оно подтверждено пользователем, оно совершает транзакцию, в противном случае происходит откат. Но если модальный режим открывается перед фиксацией или откатом, я обновляю браузер. После того же действия 3-4 раза браузер зависает, поскольку таблицы блокируются ...

Кто-нибудь знает, как в случае, если транзакция открыта в codeigniter и страница обновлена, я могу закрыть ее перед началом новой?

1 Ответ

1 голос
/ 27 февраля 2012

Да, именно для этого и предназначены транзакции.Вы должны закрыть или выполнить откат.

Транзакции должны быть открыты только на короткое время, так как они могут блокировать другие действия.Вы, конечно, не должны держать транзакцию открытой в ожидании обратной связи с пользователем.

Спросите пользователя, если он уверен, только тогда, когда он нажмет "ОК", начните транзакцию, выполните работу и передайте ее.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...