バージョン選択

フォーラム

メニュー

オンライン状況

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

サイト内検索

質問 > 管理機能 > [受注管理] PHPExcelを使ったことのある方に質問です。

管理機能

新規スレッドを追加する

スレッド表示 | 新しいものから 前のトピック | 次のトピック | 下へ
投稿者 スレッド
stonesys
投稿日時: 2014/8/19 17:47
対応状況: −−−
一人前
登録日: 2013/6/4
居住地:
投稿: 118
[受注管理] PHPExcelを使ったことのある方に質問です。
いつもお世話になっております。

受注管理画面でPHPExcelを使ってExcelファイルの出力を行っています。

<a href="java script:;" class="btn-normal" name="excelexport" onclick="eccube.setModeAndSubmit('excelexport','','');">Excel出力</a>


のようにし、

case 'excelexport':
$this->lfGetExcel($name, $objFormParam);
break;


といった感じの処理をしています。

出力実行後、画面遷移は特にしないのですが、そこで金額を変えたりしたあとに受注情報の変更を行おうとすると、またExcelを出力しようとしてしまっています。

もちろんlfGetExcel() の最後にexit()も忘れずに入れています。

原因がわからず困っています。
同じような現象が起こったことのある方いらっしゃいましたらご教授願います。
お願いします。


----------------
【使用環境】
・ECCUBE:2.13.1
・DB:mysql
・PHP:5.3.3

yona
投稿日時: 2014/8/19 18:08
対応状況: −−−
半人前
登録日: 2012/2/10
居住地:
投稿: 25
Re: [受注管理] PHPExcelを使ったことのある方に質問です。
setModeAndSubmit() がその画面上の mode(hidden) を
"excelexport"に書き換えたままの状態になっているからだと思います。

現在のmodeを一時的に退避しておいて、
送信処理が完了したら退避したmodeを戻すようにすれば解消できると思いますよ。
stonesys
投稿日時: 2014/8/20 16:35
対応状況: −−−
一人前
登録日: 2013/6/4
居住地:
投稿: 118
Re: [受注管理] PHPExcelを使ったことのある方に質問です。
初期値が、pre_editだったので、

$_RECUEST = 'pre_edit';
$_POST = 'pre_edit';
$_mode = 'pre_edit';


のように、色々なケースを完了後の処理に追加したのですが、
実現できません。



引用:

現在のmodeを一時的に退避しておいて、
送信処理が完了したら退避したmodeを戻すようにすれば解消できると思いますよ。


の具体的な書き方を教えていただけないでしょうか?


----------------
【使用環境】
・ECCUBE:2.13.1
・DB:mysql
・PHP:5.3.3

seasoft
投稿日時: 2014/8/20 16:37
対応状況: −−−
登録日: 2008/6/4
居住地:
投稿: 7367
Re: [受注管理] PHPExcelを使ったことのある方に質問です。
極超斜め読みですが・・・


$_RECUEST['mopde'] =

とかでは?


----------------
Seasoft
こちらでの投稿は、アイディア程度に留めさせていただいております。
個別案件の作業は有償で承っております。お気軽にご相談ください。

stonesys
投稿日時: 2014/8/20 16:45
対応状況: −−−
一人前
登録日: 2013/6/4
居住地:
投稿: 118
Re: [受注管理] PHPExcelを使ったことのある方に質問です。
失礼しました。

$_RECUEST['mode']

という風には記述してあります。


----------------
【使用環境】
・ECCUBE:2.13.1
・DB:mysql
・PHP:5.3.3

yona
投稿日時: 2014/8/20 17:20
対応状況: −−−
半人前
登録日: 2012/2/10
居住地:
投稿: 25
Re: [受注管理] PHPExcelを使ったことのある方に質問です。
紛らわしい書き方ですみません;
(前回書いた内容が原因であれば、)修正する必要があるのはテンプレート、JS側だと思われますので
関数を新しく作るなどして、submitした後にmodeを戻せばよいのでは?という意味でした。


function fnExcelExport() {
  var tmp = document.form1.mode.value; // 現時点のmodeを退避

  document.form1.mode.value = 'excelexport';
  document.form1.submit();

  document.form1.mode.value = tmp; // 退避したmodeを戻す
}


上記のような関数を作った後に、
エクセル出力のリンクのonclickを修正すれば動きませんか?
(form1は、実際のformについている名前と同じものを指定してください。)


<a href="java script:;" class="btn-normal" name="excelexport" onclick="fnExcelExport(); return false;">Excel出力</a>



実際に動かしてはいないのですが...;
他に送信する必要のあるパラメータ等あれば追加するなど、
おかしなところがあれば適宜調整していただけるとよいかと思います。
stonesys
投稿日時: 2014/8/20 17:41
対応状況: 解決済
一人前
登録日: 2013/6/4
居住地:
投稿: 118
Re: [受注管理] PHPExcelを使ったことのある方に質問です。
全くもってその通りでした。

裏側の処理ばかりに目がいっていて、

まさかテンプレートに問題があるとは思っていませんでした・・・・。
ありがとうございます。


----------------
【使用環境】
・ECCUBE:2.13.1
・DB:mysql
・PHP:5.3.3

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


 



ログイン


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

統計情報

総メンバー数は88,670名です
総投稿数は109,928件です

投稿数ランキング

1
seasoft
7367
2
468
3217
3
AMUAMU
2712
4
nanasess
2311
5
umebius
2085
6
yuh
1819
7
h_tanaka
1638
8
red
1569
9
mcontact
1277
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.