毎日の監査トランザクション用の PHP コードはほとんどありません。
$result = mssql_query("BEGIN TRAN");
$result = mssql_query("insert into items_history (select * from items)"); //move transaction to history
$result = mssql_query("delete * from items)"); //clear transaction table for new month transaction
$result = mssql_query( //get the data for used in another script
"select items_history.item_id,
items_history.item_name,
group_items.group_name
from
items_history,group_items
where group_items.id=items_history.id and
day(items_history.date_trans)=day(items_history.date_trans)-1 " // whit where include
);
$result = mssql_query("update trans_control set current_day=current_day+1" }; //update the system date to next day
if (!$result) {
mssql_query("ROLLBACK TRAN");
} else {
mssql_query("COMMIT TRAN");
}
mssql_close();
何らかの理由で、このデータベースは mysql データベースでオンラインに保存する必要があります。オフラインでは、このコードの安全性についてあまり心配していません。しかし、オンラインでは、セキュリティについて考えさせられます。そして今、このスクリプトを PDO MySql に変換したいと思います。目標はより安全でシンプルです。
$result = q("BEGIN");
$result = q("qry1");
$result = q("qry2");
$result = q("qry3");// select with many join table and some parameter data in where like 'string','int', 'date', and maybe with "Union All" in select
$result = q("qry..."};
if (!$result) {
q("ROLLBACK");
} else {
q("COMMIT");
}
別の質問にこのような問題がある場合。その特別に単純なラッパーから始めてよかったので、それがどのように機能するかを学ぶことができます. 前にありがとう。