![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 4 Pomógł: 0 Dołączył: 30.03.2004 Skąd: Wrocław Ostrzeżenie: (0%) ![]() ![]() |
Witam.
Mam trzy tabele: `dokument`, droga_dokumentu`, `adres_wydawniczy` potrzebuję zapisać do nich dane z formularza - ale w taki sposób aby błąd w zapisie do jednej z tabel uniemożliwił zapis do pozostałych dwóch. Mam nadzieję, że jest to zrozumiałe. Wiem ,że trzeba stosować trzy zapytania [php:1:1f69b63d9a]mysql_query();[/php:1:1f69b63d9a] ale jak napisać w miarę elegancko warunki (IMG:http://forum.php.pl/style_emoticons/default/questionmark.gif) ? Dzięki za wszelkie sugestie - pozdr. Marcin J. :wink: |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 127 Pomógł: 0 Dołączył: 19.11.2003 Skąd: Poznań Ostrzeżenie: (0%) ![]() ![]() |
Dlatego lepiej zrobić to przy pomocy ADoDB - jak już stosujemy słabą bazę (bez transakcji) można zaemulować transakcje odpowiednią klasą:
http://phplens.com/adodb/reference.functio...ansactions.html Update: Przykład: [php:1:1dd07555a4]<?php $DB->BeginTrans(); $ok = $DB->Execute("query 1"); if ($ok) $ok = $DB->Execute("query 2"); if ($ok) $ok = $DB->Execute("query 3"); if ($ok) $DB->CommitTrans(); else $DB->RollbackTrans(); ?>[/php:1:1dd07555a4] |
|
|
![]() ![]() |
![]() |
Aktualny czas: 4.10.2025 - 19:07 |