質問 > 管理機能 > 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 » |
スレッド表示 | 古いものから | 前のトピック | 次のトピック | トップ |