私はphp/mysqlを使用しています。私はmysqlのトランザクションについて知っているが、私のスクリプトでは使用できない。下記の私は、ROLLBACK、BEGINphp/mysqlでのトランザクションの使い方
foreach($json_a['shop'] as $jsondata=>$json)
{
if($json['category']==='product')
{
$name_product=$json['name'];
$query1="insert into product(id,name,user_id)values('','" . mysql_real_escape_string($name_product). "','1')";
$result1=mysql_query($query1) or die("error in query".mysql_errno());
//echo "success...!";
$product++;
}
else
if($json['category']==='order')
{
$name_order=$json['name'];
$query2="insert into order(id,name,user_id)values('','" . mysql_real_escape_string($name_order). "','1')";
$result2=mysql_query($query2) or die("error in query".mysql_errno());
$order++;
}
else
if($json['category']==='sale')
{
$name_sale=$json['name'];
$query3="insert into sale(id,name,user_id)values('','" . mysql_real_escape_string($name_sale). "','1')";
$result3=mysql_query($query3) or die("error in query".mysql_errno());
$sale++;
}
}
:
以上のエレガントな方法?あなたの質問を明確にすることはできますか?あなたが求めていることを伝えるのは難しいです。 – Charles
私はトランザクションについて質問していますが、私の質問の目的は最初にクエリが実行され、データがデータベースに挿入されますが、2番目のクエリが正しく実行されないので、挿入の順序が乱されないようにトランザクションをロールバックします。 – hunter