バージョン選択

フォーラム

メニュー

オンライン状況

30 人のユーザが現在オンラインです。 (13 人のユーザが フォーラム を参照しています。)
登録ユーザ: 0
ゲスト: 30
もっと...

サイト内検索

 > フロント機能 > get_auto_incrementについて

フロント機能

新規スレッドを追加する

スレッド表示 | 新しいものから 前のトピック | 次のトピック | 下へ
投稿者 スレッド
ゲスト
投稿日時: 2007/5/21 20:13
対応状況: −−−
get_auto_incrementについて
現在SC_Query.phpにある Function get_auto_increment()とinsert()を使って、dtb_orderテーブルに新規登録してますが、get_auto_incrementで取ったorder_idはMAX order_id+1ではなく、+2になってます。従って、insert()で同じレコード2行が登録されます。

コードは下記のとおりです。

     global $objFormParam;
$objQuery = new SC_Query();
// この時点でオーダーIDを取得
$order_id = $objQuery->get_auto_increment   ("dtb_order");
$sqlval["order_id"] = $order_id;
$sqlval["customer_id"] = $_POST['customer_id'];
$sqlval['create_date'] = 'now()';
// INSERTの実行
$objQuery->insert("dtb_order", $sqlval);

どなたかご教授頂けますでしょうか。
ゲスト
投稿日時: 2007/5/22 9:33
対応状況: −−−
補足
いろいろ試してましたが、
下記のコードでInsertだけで、
同時に二つのレコードが挿入されます。

例えば、テブールにdtb_orderに既存Max order_id=2の場合、order_id=3とorder_id=4のレコードが生成されます。


     $objQuery = new SC_Query();
$sqlval["order_id"] = NULL;
$sqlval["customer_id"] = $_POST['customer_id'];
$sqlval['create_date'] = 'now()';
// INSERTの実行
$objQuery->insert("dtb_order", $sqlval);

SC_Query.phpの254行にあるInsert Funtion

function insert($table, $sqlval) {
$strcol = '';
$strval = '';
$find = false;

if(count($sqlval) <= 0 ) return false;

foreach ($sqlval as $key => $val) {
$strcol .= $key . ',';
if(eregi("^Now\(\)$", $val)) {
$strval .= 'Now(),';
} else {
$strval .= '?,';
if($val != ""){
$arrval[] = $val;
} else {
$arrval[] = NULL;
}
}
$find = true;
}
if(!$find) {
return false;
}
// 文末の","を削除
$strcol = ereg_replace(",$","",$strcol);
// 文末の","を削除
$strval = ereg_replace(",$","",$strval);
$sqlin = "INSERT INTO $table(" . $strcol. ") VALUES (" . $strval . ")";

// INSERT文の実行
$ret = $this->conn->query($sqlin, $arrval);

return $ret;
}

よろしくお願いします。
ゲスト
投稿日時: 2007/5/22 13:17
対応状況: −−−
自己解決。
下記のようにImageボタンを記述してましたので、二重Submitでした。

<input type="image" onMouseover="chgImgImageSubmit('<!--{$smarty.const.URL_DIR}-->img/contents/btn_regist_on.jpg',this)" onMouseout="chgImgImageSubmit('<!--{$smarty.const.URL_DIR}-->img/contents/btn_regist.jpg',this)" src="<!--{$smarty.const.URL_DIR}-->img/contents/btn_regist.jpg" width="123" height="24" alt="この内容で登録する" border="0" name="subm" onclick="save();">
お騒がせしてすみませんでした!

スレッド表示 | 新しいものから 前のトピック | 次のトピック | トップ


 



ログイン


EC-CUBE公式 Amazon Payプラグイン

統計情報

総メンバー数は89,334名です
総投稿数は110,082件です

投稿数ランキング

1
seasoft
7367
2
468
3217
3
AMUAMU
2712
4
nanasess
2314
5
umebius
2085
6
yuh
1819
7
h_tanaka
1652
8
red
1570
9
mcontact
1304
10
tsuji
958
11
fukap
907
12
shutta
835
13
tao_s
799
14 ramrun 789
15 karin 689
16 sumida 641
17
homan
633
18 DELIGHT 572
19
patapata
502
20
flealog
485


ネットショップの壺

EC-CUBEインテグレートパートナー

Copyright© EC-CUBE CO.,LTD. All Rights Reserved.