バージョン選択

フォーラム

メニュー

オンライン状況

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

サイト内検索

質問 > 管理機能 > 2.11.4 お問い合わせ管理機能について

管理機能

新規スレッドを追加する

スレッド表示 | 古いものから 前のトピック | 次のトピック | 下へ
投稿者 スレッド
yosako
投稿日時: 2011/12/12 11:15
対応状況: 解決済
一人前
登録日: 2011/12/3
居住地:
投稿: 101
Re: 2.11.4 お問い合わせ管理機能について
ありがとうございました。

サイトに掲載されていた1-contact_regist.pdfをそのままコピーさせていただいたところ、すんなり保存できました。

最初のエラーは、DB Fieldの不一致が原因でした。Kana01とKana02はfieldを作成していませんでした。

お騒がせしました。
ゲスト
投稿日時: 2011/12/11 17:00
対応状況: −−−
Re: 2.11.4 お問い合わせ管理機能について
話の流れから、こちらに続けます。

http://xoops.ec-cube.net/modules/newbb/viewtopic.php?viewmode=thread&topic_id=9466&forum=11&post_id=45736#forumpost45736

が、役に立った様ですので、同様に、参考にしてみてください。
yosako
投稿日時: 2011/12/10 11:38
対応状況: −−−
一人前
登録日: 2011/12/3
居住地:
投稿: 101
Re: 2.11.4 お問い合わせ管理機能について
便乗質問で済みませんが、私の場合は、エラーではなく、DBにはcontact_id, customer_id, create_date, update_date以外がすべてNullとなってしまいます。

そこで、


case 'complete':

$this->lfSendMail($this);
//お問い合せ内容DB格納のための追加
$this->arrFormData = $_POST;
$this->lfRegisterContactData();

function lfRegisterContactData(){
$sqlval = array();
$sqlval['name01'] = $this->arrFormData['name01'];
$sqlval['name02'] = $this->arrFormData['name02'];
$sqlval['email'] = $this->arrFormData['email'];
$sqlval['zip01'] = $this->arrFormData['zip01'];
$sqlval['zip02'] = $this->arrFormData['zip02'];
$sqlval['pref'] = $this->arrFormData['pref'];
$sqlval['addr01'] = $this->arrFormData['addr01'];
$sqlval['addr02'] = $this->arrFormData['addr02'];
$sqlval['tel01'] = $this->arrFormData['tel01'];
$sqlval['tel02'] = $this->arrFormData['tel02'];
$sqlval['tel03'] = $this->arrFormData['tel03'];
$sqlval['contents'] = $this->arrFormData['contents'];
$sqlval['create_date'] = 'Now()';
$sqlval['update_date'] = 'Now()';
if(isset($this->arrData['customer_id']) AND !empty($this->arrData['customer_id'])){
$sqlval['customer_id'] = $this->arrData['customer_id'];
}
$objQuery = new SC_Query();
$objQuery->begin();
$objQuery->insert("dtb_contact", $sqlval);
$objQuery->commit();

としたところ、すべての値が保存されるようになるのですが、どこを直せばよいのでしょうか。
なお、contact_idはAUTO_INCREMENTに設定しています。

sea_gull
投稿日時: 2011/12/9 18:53
対応状況: 解決済
常連
登録日: 2011/3/28
居住地:
投稿: 40
Re: 2.11.4 お問い合わせ管理機能について
返信ありがとうございます。

消し忘れていました。。

if文の上の、引数の無い
$this->lfRegisterContactData();
を削除

で無事、設置することができました。
また、以前より使いやすくなっています!

ありがとうございました。
ゲスト
投稿日時: 2011/12/9 7:39
対応状況: −−−
Re: 2.11.4 お問い合わせ管理機能について
$this->lfRegisterContactData();
if (SC_Utils_Ex::isBlank($this->arrErr)) {

if文の上の、引数の無い
$this->lfRegisterContactData();
を削除して下さい。
sea_gull
投稿日時: 2011/12/8 22:27
対応状況: −−−
常連
登録日: 2011/3/28
居住地:
投稿: 40
Re: 2.11.4 お問い合わせ管理機能について
下記、変更した部分ですが、貼付場所は合っていますか?

●LC_Page_Contact_Ex.php
----------------------------------------------------
class LC_Page_Contact_Ex extends LC_Page_Contact {

// }}}
// {{{ functions

// ●hideki-s '11.06.20
// データベースへ格納
function lfRegisterContactData($objFormParam){
$objQuery =& SC_Query_EX::getSingletonInstance();
$sqlval = $objFormParam->getDbArray();
unset($sqlval['email02']);
$sqlval['create_date'] = 'Now()';
$sqlval['update_date'] = 'Now()';
if(isset($this->arrData['customer_id']) && !empty($this->arrData['customer_id'])){
$sqlval['customer_id'] = $this->arrData['customer_id'];
}
$contact_id = $objQuery->nextVal('dtb_contact_contact_id');
$sqlval['contact_id'] = $contact_id;
$objQuery->begin();
$objQuery->insert("dtb_contact", $sqlval);
$objQuery->commit();
}

/**
* Page を初期化する.
*
* @return void
*/
function init() {
parent::init();
}
----------------------------------------------------

●LC_Page_Contact.php
----------------------------------------------------
case 'complete':
$this->lfInitParam($objFormParam);
$objFormParam->setParam($_POST);
$this->arrErr = $objFormParam->checkError();
$this->arrForm = $objFormParam->getFormParamList();
$this->lfRegisterContactData();
if (SC_Utils_Ex::isBlank($this->arrErr)) {
$this->lfSendMail($this);

// ●hideki-s '11.06.20
$this->lfRegisterContactData($objFormParam);

// 完了ページへ移動する
SC_Response_Ex::sendRedirect('complete.php');
exit;
} else {
SC_Utils_Ex::sfDispSiteError(CUSTOMER_ERROR);
exit;
}
break;

default:

// ●hideki-s '11.06.20' 問合せ時の雛形記入用
$this->arrData['contents'] = "";

break;
}
}
----------------------------------------------------
ゲスト
投稿日時: 2011/12/8 21:19
対応状況: −−−
Re: 2.11.4 お問い合わせ管理機能について
        
$sqlval = $objFormParam->getDbArray();
が実行される前に
$objFormParam = new SC_FormParam_Ex();
が実行されてますでしょうか?

エラーは、
SC_FormParam.php内の function getDbArray() に辿り着けない
と言ってます。

class_extendsを使ってのオーバーライドが難しいようでしたら、
一旦事を進めるには、class内の変更対象のファイルを保存の後、
class内の変更の方が良いかも。。。
sea_gull
投稿日時: 2011/12/8 20:50
対応状況: −−−
常連
登録日: 2011/3/28
居住地:
投稿: 40
Re: 2.11.4 お問い合わせ管理機能について
下記エラーになっています。
お手数をお掛けします。

PHP Fatal error: Call to a member function getDbArray() on a non-object in /virtual/www/shop/data/class/pages/contact/LC_Page_Contact.php on line 220, referer: http://www.000.net/shop/contact/?
ゲスト
投稿日時: 2011/12/8 20:40
対応状況: −−−
Re: 2.11.4 お問い合わせ管理機能について
エラーの内容を教えてください。
sea_gull
投稿日時: 2011/12/8 20:31
対応状況: −−−
常連
登録日: 2011/3/28
居住地:
投稿: 40
Re: 2.11.4 お問い合わせ管理機能について
ご連絡ありがとうございます。

Ringo様のコードをコピーしてみたのですがエラーがでてしまいます。
自力では解決出来ませんでした。
なにか解りましたら教えて頂けるとありがたいです。

2.『data/class_extends/pages/contact/』
  LC_Page_Contact_Ex.php

function lfRegisterContactData($objFormParam){
$objQuery =& SC_Query_EX::getSingletonInstance();
$sqlval = $objFormParam->getDbArray(); ←■この行でエラー■
unset($sqlval['email02']);
$sqlval['create_date'] = 'Now()';
$sqlval['update_date'] = 'Now()';
if(isset($this->arrData['customer_id']) && !empty($this->arrData['customer_id'])){
$sqlval['customer_id'] = $this->arrData['customer_id'];
}
$contact_id = $objQuery->nextVal('dtb_contact_contact_id');
$sqlval['contact_id'] = $contact_id;
$objQuery->begin();
$objQuery->insert("dtb_contact", $sqlval);
$objQuery->commit();
}
(1) 2 »
スレッド表示 | 古いものから 前のトピック | 次のトピック | トップ


 



ログイン


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

統計情報

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

投稿数ランキング

1
seasoft
7367
2
468
3217
3
AMUAMU
2712
4
nanasess
2314
5
umebius
2085
6
yuh
1819
7
h_tanaka
1646
8
red
1570
9
mcontact
1296
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.