質問 > 管理機能 > CSV出力後、ステータスを自動更新したいのですが。 |
管理機能
スレッド表示 | 古いものから | 前のトピック | 次のトピック | 下へ |
投稿者 | スレッド |
---|---|
lvsa |
投稿日時: 2009/10/7 14:03
対応状況: −−−
|
一人前 登録日: 2009/10/6 居住地: 投稿: 104 |
Re: CSV出力後、ステータスを自動更新したいのですが。 AMUAMU様
返信ありがとうございます。 コード間違ってますね・・。 本来は、 function lfUpdateStatus($arrData = array()) にorder_idの配列を渡し、order_id分UPDATEする。 という処理を行おうとしてました。 ご指摘ありがとうございます。 もう少し、格闘してみますwww |
lvsa |
投稿日時: 2009/10/7 14:01
対応状況: −−−
|
一人前 登録日: 2009/10/6 居住地: 投稿: 104 |
Re: CSV出力後、ステータスを自動更新したいのですが。 seasoft様
再三の返信ありがとうございます。 exitで止めても、echoの内容は表示されない状態です。 何が原因か分からない状態ですので、もう一度インストール し直してみます。 ありがとうございました。 |
AMUAMU |
投稿日時: 2009/10/7 13:33
対応状況: −−−
|
神 登録日: 2009/5/2 居住地: 東京都 投稿: 2712 |
Re: CSV出力後、ステータスを自動更新したいのですが。 デバッグなどが動いていない問題はわかりませんが、ぱっと見でコード上の間違いではないかと思われる点を
$arrCsvDataはSQL文の配列が入っていたような?
上記の呼び出しに対応するfunctionが
となっていますがlfUpdateStatusは配列を受け取る事を想定しながら、上の呼び出し側は単体idを想定? $order_idに配列セットを収めるようにする必要があるかと なお、コードとしては矛盾(構文上の間違い)が無いのでphp関連のエラーは出ないと思います。
|
seasoft |
投稿日時: 2009/10/7 12:45
対応状況: −−−
|
神 登録日: 2008/6/4 居住地: 投稿: 7367 |
Re: CSV出力後、ステータスを自動更新したいのですが。 echo の直後に、exit で止めると良いかも。
最悪、もっと地道に、/html/.../*.php から追ってみるというコースも検討を・・・
|
lvsa |
投稿日時: 2009/10/7 12:41
対応状況: −−−
|
一人前 登録日: 2009/10/6 居住地: 投稿: 104 |
Re: CSV出力後、ステータスを自動更新したいのですが。 seasoft様
返信ありがとうございます。 echoで地道に追おうと思ったのですが、 echoもvar_dumpしても何も表示されません。 こんな感じでロジック内に入れてます。 echo $sqlse; var_dump($sqlse); 何か原因があるのでしょうか? アドバイスいただけますと幸いです。 |
seasoft |
投稿日時: 2009/10/7 12:19
対応状況: −−−
|
神 登録日: 2008/6/4 居住地: 投稿: 7367 |
Re: CSV出力後、ステータスを自動更新したいのですが。 泥臭い方法ですが、各所に
echo '通過点A'; echo '通過点B'; などを配置して、コードの動きを追うと良いかと思います。
|
lvsa |
投稿日時: 2009/10/7 12:13
対応状況: −−−
|
一人前 登録日: 2009/10/6 居住地: 投稿: 104 |
Re: CSV出力後、ステータスを自動更新したいのですが。 お世話になっております。
先日の方法を以下のようなロジックで試してみたのですが、 動いていないようです。 LC_Page_Admin_Contents_CsvSql.php内にメソッド追加。 function lfUpdateStatus($arrData = array()){ // インスタンス生成 $objQuery = new SC_Query(); // UPDATE文作成 $sql = "UPDATE "; $sql .= " dtb_order "; $sql .= "SET "; $sql .= " status = 7 "; $sql .= "WHERE "; $sql .= " order_id = ?"; // データの数だけUPDATE実行 foreach($arrData as $value){ $objQuery->query($sql, $value); } } case "csv_output":の箇所の // CSV出力 SC_Utils_Ex::sfCSVDownload($header.$data);の後に以下の処理追加 // order_id取得 $order_id = $arrCsvData['order_id']; // 受注ステータス更新 $this->lfUpdateStatus($order_id); ステータスも変更されませんし、エラーなども起きていません。 また、DEBUG_MODEをtrueにしているにも関わらず、 SC_Utils::sfPrintR( $order_id );が使用できないようです。 (デバッグが動いていない状態です。) site.logも生成されないみたいなのですが、 なにか設定が間違っているのでしょうか・・? アドバイスよろしくお願いいたします。 |
lvsa |
投稿日時: 2009/10/7 1:22
対応状況: −−−
|
一人前 登録日: 2009/10/6 居住地: 投稿: 104 |
Re: CSV出力後、ステータスを自動更新したいのですが。 seasoft様
何度も返信ありがとうございます。 > 現在検討しているのは、LC_Page_Admin_Contents_CsvSql.php内のcase "csv_output":の箇所で、 > CSV出力後にSC_Queryのupdate()を使用してステータスの更新を検討していますが、アドバイスいただけないでしょうか? とりあえず上記手順にて実装してみます。 また困った時には、お力添えのほどよろしくお願いいたします。 |
lvsa |
投稿日時: 2009/10/7 1:20
対応状況: −−−
|
一人前 登録日: 2009/10/6 居住地: 投稿: 104 |
Re: CSV出力後、ステータスを自動更新したいのですが。 asayama様
返信ありがとうございます。 アドバイスを参考にさせていただき、ロジック考えたいと思います。 また何かあればお力添えのほど、よろしくお願いいたします。 |
seasoft |
投稿日時: 2009/10/6 18:49
対応状況: −−−
|
神 登録日: 2008/6/4 居住地: 投稿: 7367 |
Re: CSV出力後、ステータスを自動更新したいのですが。 > どのタイミングでUPDATEさせるかですが、CSV出力ボタンが押下されたタイミングで、
> UPDATE文を走らせることは可能でしょうか? > > 現在検討しているのは、LC_Page_Admin_Contents_CsvSql.php内のcase "csv_output":の箇所で、 > CSV出力後にSC_Queryのupdate()を使用してステータスの更新を検討していますが、アドバイスいただけないでしょうか? その流れで、概ね問題ないかと思います。 厳密なタイミングを気にされる場合ですと、抽出条件によっては、分離レベルの高いトランザクションで処理する必要があるかもしれません。
|
« 1 (2) 3 » |
スレッド表示 | 古いものから | 前のトピック | 次のトピック | トップ |