質問 > フロント機能 > 【会員登録(入力ページ)】へデータを引き継ぎたい |
フロント機能
スレッド表示 | 新しいものから | 前のトピック | 次のトピック | 下へ |
投稿者 | スレッド |
---|---|
hihi |
投稿日時: 2012/8/28 20:46
対応状況: −−−
|
一人前 登録日: 2012/8/14 居住地: 投稿: 72 |
【会員登録(入力ページ)】へデータを引き継ぎたい [EC-CUBE]2.12.1
[PHP]5.3.1 [データベース]MySQL 5.1.43 ________________ 男性なら http://ドメイン名/index.php?sex=1 を、 女性なら http://ドメイン名/index.php?sex=2 を 踏んで、サイトに来訪。 ↓↓↓ 男性ならsex=1のデータを 女性ならsex=2のデータを ↓↓↓ http://ドメイン名/entry/index.php 【会員登録(入力ページ)】へ 引き継げるかたちにして、これから会員になる人自身が 男女を選ばなくても、データベースに男女の登録が出来ているようにしたいのですが、どのように実現したら良いのでしょうか? どのファイルを変更したらなど出来るだけ詳しく教えて頂けると助かります。よろしくお願いします。 |
marugizmo |
投稿日時: 2012/8/28 23:45
対応状況: −−−
|
一人前 登録日: 2012/4/6 居住地: 投稿: 147 |
Re: 【会員登録(入力ページ)】へデータを引き継ぎたい こんばんは。
2.121で簡単にやってみました。 data/class/LC_Page_Index.phpでaction部分に if($_GET["sex"]) { $_SESSION["sex_check"] = $_GET["sex"]; と入れる。
data/class/pages/entry/LC_Page_Entry.phpの switch ($this->getMode()) { の上に if($_SESSION["sex_check"]) { $this->sex_check = $_SESSION["sex_check"]; //unset($_SESSION["sex_check"]); } } といれる。
data/Smarty/templates/default/frontparts/form_personal_input.tpl で性別入力のところ <input type="radio" id="man" name="<!--{$key1}-->" value="1" <!--{if $arrForm[$key1] eq 1}--> checked="checked" <!--{/if}--> /><label for="man">男性</label> <input type="radio" id="woman" name="<!--{$key1}-->" value="2" <!--{if $arrForm[$key1] eq 2}--> checked="checked" <!--{/if}--> /><label for="woman">女性</label> を下記に変更 <input type="radio" id="man" name="<!--{$key1}-->" value="1" <!--{if $arrForm[$key1] eq 1 || $sex_check eq 1}--> checked="checked" <!--{/if}--> /><label for="man">男性</label> <input type="radio" id="woman" name="<!--{$key1}-->" value="2" <!--{if $arrForm[$key1] eq 2 || $sex_check eq 2}--> checked="checked" <!--{/if}--> /><label for="woman">女性</label>
簡単にやるとこんな感じでしょうか。
|
hihi |
投稿日時: 2012/8/31 11:45
対応状況: −−−
|
一人前 登録日: 2012/8/14 居住地: 投稿: 72 |
Re: 【会員登録(入力ページ)】へデータを引き継ぎたい ありがとうございます。
助かります。 form_personal_input.tplなのですが、valueの値をSESSIONデータから取り込む方法はないのでしょうか?職業などで応用し、職種が増えた時に、input typeで増やさなくても良い方法があれば知りたいのですが、よろしくお願いします。 |
marugizmo |
投稿日時: 2012/8/31 14:40
対応状況: −−−
|
一人前 登録日: 2012/4/6 居住地: 投稿: 147 |
Re: 【会員登録(入力ページ)】へデータを引き継ぎたい こんにちは。
SESSIONデータから取り込む = 予めSESSIONに格納するデータを取得しておく。 ということになるので、前後の流れなどを考える必要がありませんか? また、メルマガ管理>配信内容設定 などで職業をフィルタ条件に使っています。 ご希望の方法で職業を増やすとこれらに問題が生じます。
|
hihi |
投稿日時: 2012/8/31 17:16
対応状況: −−−
|
一人前 登録日: 2012/8/14 居住地: 投稿: 72 |
Re: 【会員登録(入力ページ)】へデータを引き継ぎたい わかりました。
ありがとうございます。 ちょっと考えてみます。 また、何かあった際にはよろしくお願いします。 |
hihi |
投稿日時: 2012/9/3 13:06
対応状況: −−−
|
一人前 登録日: 2012/8/14 居住地: 投稿: 72 |
Re: 【会員登録(入力ページ)】へデータを引き継ぎたい お世話になっております。
SESSIONに格納したデータ(この場合はsexの値【1】)をinputを使わずに直接データベースに入れる方法を試みているのですが、うまく行きません。ご教授願いします。 よろしくお願いします。 やりたい事としては、会員に見えない形でデータを保存出来ればと思っています。 |
hihi |
投稿日時: 2012/9/3 15:24
対応状況: 解決済
|
一人前 登録日: 2012/8/14 居住地: 投稿: 72 |
Re: 【会員登録(入力ページ)】へデータを引き継ぎたい 無事に解決できました。
有難う御座いました。 |
hihi |
投稿日時: 2012/10/29 21:53
対応状況: −−−
|
一人前 登録日: 2012/8/14 居住地: 投稿: 72 |
Re: 【会員登録(入力ページ)】へデータを引き継ぎたい marugizmoさんに教えて頂いた通りにやってみたのですが携帯の方がうまく行きません。セッションからデータが引き出せない状態です。なぜ、パソコンでは出来て携帯では出来ないのでしょうか?
ご教授下さい。 以下のとおりにやってみました。 data/class/LC_Page_Index.phpでaction部分に if($_GET["sex"]) { $_SESSION["sex_check"] = $_GET["sex"]; と入れる。
data/class/pages/entry/LC_Page_Entry.phpの switch ($this->getMode()) { の上に if($_SESSION["sex_check"]) { $this->sex_check = $_SESSION["sex_check"]; //unset($_SESSION["sex_check"]); } } といれる。
data/Smarty/templates/default/frontparts/form_personal_input.tpl で性別入力のところ <input type="radio" id="man" name="<!--{$key1}-->" value="1" <!--{if $arrForm[$key1] eq 1}--> checked="checked" <!--{/if}--> /><label for="man">男性</label> <input type="radio" id="woman" name="<!--{$key1}-->" value="2" <!--{if $arrForm[$key1] eq 2}--> checked="checked" <!--{/if}--> /><label for="woman">女性</label> を下記に変更 <input type="radio" id="man" name="<!--{$key1}-->" value="1" <!--{if $arrForm[$key1] eq 1 || $sex_check eq 1}--> checked="checked" <!--{/if}--> /><label for="man">男性</label> <input type="radio" id="woman" name="<!--{$key1}-->" value="2" <!--{if $arrForm[$key1] eq 2 || $sex_check eq 2}--> checked="checked" <!--{/if}--> /><label for="woman">女性</label>
|
hihi |
投稿日時: 2012/10/29 21:57
対応状況: 開発中
|
一人前 登録日: 2012/8/14 居住地: 投稿: 72 |
Re: 【会員登録(入力ページ)】へデータを引き継ぎたい marugizmoさんに教えて頂いた通りにやってみたのですが携帯の方がうまく行きません。セッションからデータが引き出せない状態です。なぜ、パソコンでは出来て携帯では出来ないのでしょうか?
ご教授下さい。 以下のとおりにやってみました。 data/class/LC_Page_Index.phpでaction部分に if($_GET["sex"]) { $_SESSION["sex_check"] = $_GET["sex"]; と入れる。
data/class/pages/entry/LC_Page_Entry.phpの switch ($this->getMode()) { の上に if($_SESSION["sex_check"]) { $this->sex_check = $_SESSION["sex_check"]; //unset($_SESSION["sex_check"]); } } といれる。
data/Smarty/templates/default/frontparts/form_personal_input.tpl で性別入力のところ <input type="radio" id="man" name="<!--{$key1}-->" value="1" <!--{if $arrForm[$key1] eq 1}--> checked="checked" <!--{/if}--> /><label for="man">男性</label> <input type="radio" id="woman" name="<!--{$key1}-->" value="2" <!--{if $arrForm[$key1] eq 2}--> checked="checked" <!--{/if}--> /><label for="woman">女性</label> を下記に変更 <input type="radio" id="man" name="<!--{$key1}-->" value="1" <!--{if $arrForm[$key1] eq 1 || $sex_check eq 1}--> checked="checked" <!--{/if}--> /><label for="man">男性</label> <input type="radio" id="woman" name="<!--{$key1}-->" value="2" <!--{if $arrForm[$key1] eq 2 || $sex_check eq 2}--> checked="checked" <!--{/if}--> /><label for="woman">女性</label>
|
marugizmo |
投稿日時: 2012/11/1 16:57
対応状況: −−−
|
一人前 登録日: 2012/4/6 居住地: 投稿: 147 |
Re: 【会員登録(入力ページ)】へデータを引き継ぎたい こんにちは
引用: 携帯ではセッションが使えない場合があります。 具体的にはdocomoはNGでSoftbankとauの最近の機種はOKです。 その場合、LC_Page_Index.phpで受け取った値をdata/class/pages/entry/LC_Page_Entry.phpに対してGETかPOSTで引き渡す必要がありますが、セッションハイジャックの脆弱性があります。 まずは http://www.plusmb.jp/2008/11/06/1137.html など確認いただき理解された方が良いと思います。 「携帯 PHP セッション」で検索すると、いろいろ出てきます。
|
(1) 2 » |
スレッド表示 | 新しいものから | 前のトピック | 次のトピック | トップ |