バージョン選択

フォーラム

メニュー

オンライン状況

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

サイト内検索

質問 > フロント機能 > 「前のページへ戻る」ボタンのリンクについて

フロント機能

新規スレッドを追加する

スレッド表示 | 新しいものから 前のトピック | 次のトピック | 下へ
投稿者 スレッド
fukap
投稿日時: 2011/2/7 17:37
対応状況: −−−
仙人
登録日: 2009/7/7
居住地: 滋賀県
投稿: 907
Re: 「前のページへ戻る」ボタンのリンクについて
<input type="hidden" name="mode" value="cart" /> をつけて、detail.php にPOSTしている時点で、

detail.phpの元となっている、LC_Page_Products_Detailで、setPrevURL($_SERVER['REQUEST_URI'])が

実行されているので、そこで前のページがセットされてしまっている・・という理解でよろしいでしょうか。
patapata
投稿日時: 2011/2/7 17:41
対応状況: −−−
仙人
登録日: 2010/7/7
居住地: 神奈川県
投稿: 502
Re: 「前のページへ戻る」ボタンのリンクについて
んだね。
その改造だと
htmlページ → 詳細ページ → カート
って移動になるので処理かえないとできません。

-------------------------------
$refererUrl = $_SERVER['HTTP_REFERER'];

//前回ページが以下を含む場合は追加しない
$arrNoSave = array(
"hogehoge.html",
"hogehoge1.html",
"hogehoge2.html"
)

$isNoSave = false;
foreach($arrNoSave as $val) {
if(ereg($val, $refererUrl )) {
$isNoSave = true;
break;
}
}

if(!$isNoSave){
$objCartSess->setPrevURL($_SERVER['REQUEST_URI']);
}
-------
[ソースはあくまでサンプルです。動作確認もしてません]

こんな感じの処理にしないと駄目かなぁ〜

(SC_CartSession.phpのsetPrevURLを改造する方がスマートです)
fukap
投稿日時: 2011/2/7 18:48
対応状況: −−−
仙人
登録日: 2009/7/7
居住地: 滋賀県
投稿: 907
Re: 「前のページへ戻る」ボタンのリンクについて
patapataさんのコードを、以下の変更を加えた上でLC_Page_Product_Detail.phpの185行目付近に入れてみました。

・一部セミコロンが抜けている箇所があったので、直しました。
・hogehoge.htmlを、該当のPHPファイル名に変更しました。

特にエラーなどは出ていませんが、やはり「前のページに戻る」を押した場合に、
テンプレートで自動生成された商品詳細ページに戻ります。
まだおかしいところがありますでしょうか?
fukap
投稿日時: 2011/2/7 20:50
対応状況: −−−
仙人
登録日: 2009/7/7
居住地: 滋賀県
投稿: 907
Re: 「前のページへ戻る」ボタンのリンクについて
patapataさんのコードを少し変えてみたら、期待通りの効果が得られました。
このコードではどうでしょうか?


/* LC_Page_Product_Detail.php の185行目あたりに以下を記述 */

$refererUrl = $_SERVER['HTTP_REFERER'];

//前回ページが以下を含む場合は追加しない
$arrNoSave = array(
"hogehoge.html",
"hogehoge1.html",
"hogehoge2.html"
);

$isNoSave = false;
foreach($arrNoSave as $val) {
if(ereg($val, $refererUrl )) {
$isNoSave = true;
break;
}
}

if(!$isNoSave){
$objCartSess->setPrevURL($_SERVER['REQUEST_URI']);
}
else{
$objCartSess->setPrevURL($refererUrl);
}
patapata
投稿日時: 2011/2/7 21:34
対応状況: −−−
仙人
登録日: 2010/7/7
居住地: 神奈川県
投稿: 502
Re: 「前のページへ戻る」ボタンのリンクについて
作ったhtmlページで、setPrevURL呼んでる筈なのに、
更にelseで記載しないと駄目なのは、なんか腑に落ちませんが。

また、$_SERVER['HTTP_REFERER']は、空っぽの場合もあるからそれで動作検証して動くならいいのかな???

動作保証は、あくまでご自身で検査してください。私が提供したのはあくまでその場で考えた(既存処理をパクって作った)サンプルです。
fukap
投稿日時: 2011/2/8 10:34
対応状況: −−−
仙人
登録日: 2009/7/7
居住地: 滋賀県
投稿: 907
Re: 「前のページへ戻る」ボタンのリンクについて
やはりelse以下の記述をコメントアウトすると元の動作に戻ってしまいました。
とりあえずelse以下の記述も入れた形で、自己責任でしばらく様子を見てみようと思っています。

ところで、オリジナルで作成したPHPページで、以下のコードを記述していますが、
これで$urlの値が次のページに引き渡されるのは、セッションを利用しているからでしょうか。
POSTで投げて変数が引き渡されるのはわかるのですが、以下の処理でどうやって変数が
引き渡されるのか不思議に思いました。


<?php
require_once("require.php");
require_once("data/class/SC_CartSession.php");
$objCartSess = new SC_CartSession();
$url = $_SERVER['REQUEST_URI'];
$objCartSess->setPrevURL($url);
?>
patapata
投稿日時: 2011/2/8 21:32
対応状況: −−−
仙人
登録日: 2010/7/7
居住地: 神奈川県
投稿: 502
Re: 「前のページへ戻る」ボタンのリンクについて
SC_CartSession.php内でセッションは管理しているのでそのまま流用すれば、
できるかな?と思いましたが、うまくできなかったようです。

また該当記述は、現在の処理では意味を成してないので削除して大丈夫な筈です。

« 1 2 (3)
スレッド表示 | 新しいものから 前のトピック | 次のトピック | トップ


 



ログイン


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

統計情報

総メンバー数は90,342名です
総投稿数は110,365件です

投稿数ランキング

1
seasoft
7369
2
468
3217
3
AMUAMU
2712
4
nanasess
2314
5
umebius
2085
6
yuh
1819
7
h_tanaka
1693
8
red
1571
9
mcontact
1360
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.