メンバーシップ【会員制サイト】プラグイン:入力(登録)項目の追加方法

CMSファクトリー4 アドオン・プラグインについて
公式アドオン・プラグイン販売開始致しました!

メンバーシップ【会員制サイト】プラグイン:入力(登録)項目の追加方法

投稿記事by cmsfactory4 » 2010年8月20日(金) 09:27

以下、CMSF4メンバーシップ【会員制サイト】プラグインで、メンバー(会員)の登録時(編集時)においての入力(登録)項目の追加方法についてご参考下さい。

住所(address)と電話番号(phone)の登録を追加する場合の例です。

1)新規メンバー登録【signup.php】を以下の様に編集して下さい。

1-A. 以下の項目を add user に追加して下さい。
コード: 全て選択
address         = '".mysql_escape( $_REQUEST['address'] )."',
phone         = '".mysql_escape( $_REQUEST['phone'] )."',

<編集前:signup.php>
コード: 全て選択
  // add user
  if (!$errorsAndAlerts) {
    $_REQUEST['password'] = substr(md5(uniqid(rand(), true)), 15); // example output: c5560251ef0b3eef9

    mysql_query("INSERT INTO `{$TABLE_PREFIX}accounts` SET
                    fullname         = '".mysql_escape( $_REQUEST['fullname'] )."',
                    email            = '".mysql_escape( $_REQUEST['email'] )."',
                    username         = '".mysql_escape( $_REQUEST['username'] )."',
                    password         = '".mysql_escape( $_REQUEST['password'] )."',

                    disabled         = '0',
                    isAdmin          = '0',
                    expiresDate      = '0000-00-00 00:00:00',
                    neverExpires     = '1',
                    createdDate      = NOW(),
                    updatedDate      = NOW(),
                    createdByUserNum = '0',
                    updatedByUserNum = '0'")
    or die("MySQLエラー レコード作成:<br/>\n". htmlspecialchars(mysql_error()) . "\n");
    $userNum = mysql_insert_id();

<編集後:signup.php>
コード: 全て選択
  // add user
  if (!$errorsAndAlerts) {
    $_REQUEST['password'] = substr(md5(uniqid(rand(), true)), 15); // example output: c5560251ef0b3eef9

    mysql_query("INSERT INTO `{$TABLE_PREFIX}accounts` SET
                    fullname         = '".mysql_escape( $_REQUEST['fullname'] )."',
                    email            = '".mysql_escape( $_REQUEST['email'] )."',
                    username         = '".mysql_escape( $_REQUEST['username'] )."',
                    password         = '".mysql_escape( $_REQUEST['password'] )."',

                    address         = '".mysql_escape( $_REQUEST['address'] )."',
                    phone         = '".mysql_escape( $_REQUEST['phone'] )."',

                    disabled         = '0',
                    licensed         = '1',
                    isAdmin          = '0',
                    expiresDate      = '0000-00-00 00:00:00',
                    neverExpires     = '1',
                    createdDate      = NOW(),
                    updatedDate      = NOW(),
                    createdByUserNum = '0',
                    updatedByUserNum = '0'")
    or die("MySQLエラー レコード作成:<br/>\n". htmlspecialchars(mysql_error()) . "\n");
    $userNum = mysql_insert_id();

1-B. 以下の項目を error checking に追加して下さい。
コード: 全て選択
if (!@$_REQUEST['address'])                { $errorsAndAlerts .= "住所を入力して下さい。<br/>\n"; }
if (!@$_REQUEST['phone'])                { $errorsAndAlerts .= "電話番号を入力して下さい。<br/>\n"; }

<編集前:signup.php>
コード: 全て選択
  // error checking
  $errorsAndAlerts = "";
  if (!@$_REQUEST['fullname'])                { $errorsAndAlerts .= "メンバー名を入力して下さい。<br/>\n"; }
  if (!@$_REQUEST['email'])                   { $errorsAndAlerts .= "メールアドレスを入力して下さい。<br/>\n"; }
  else if(!isValidEmail(@$_REQUEST['email'])) { $errorsAndAlerts .= "有効なメールアドレスを入力して下さい。(例:user@cmsf4.com)<br/>\n"; }
  if (!@$_REQUEST['username'])                { $errorsAndAlerts .= "ログインIDを入力して下さい。<br/>\n"; }

<編集後:signup.php>
コード: 全て選択
  // error checking
  $errorsAndAlerts = "";
  if (!@$_REQUEST['fullname'])                { $errorsAndAlerts .= "メンバー名を入力して下さい。<br/>\n"; }
  if (!@$_REQUEST['email'])                   { $errorsAndAlerts .= "メールアドレスを入力して下さい。<br/>\n"; }
  else if(!isValidEmail(@$_REQUEST['email'])) { $errorsAndAlerts .= "有効なメールアドレスを入力して下さい。(例:user@cmsf4.com)<br/>\n"; }
  if (!@$_REQUEST['username'])                { $errorsAndAlerts .= "ログインIDを入力して下さい。<br/>\n"; }

  if (!@$_REQUEST['address'])                { $errorsAndAlerts .= "住所を入力して下さい。<br/>\n"; }
  if (!@$_REQUEST['phone'])                { $errorsAndAlerts .= "電話番号を入力して下さい。<br/>\n"; }

2)新規メンバー登録【signup.php】を以下の様に編集して下さい。

以下を追加して下さい。
コード: 全て選択
 <tr>
  <td>住所</td>
  <td><input type="text" name="address" value="<?php echo htmlspecialchars(@$_REQUEST['address']); ?>" size="50" /></td>
 </tr>
 <tr>
  <td>電話番号</td>
  <td><input type="text" name="phone" value="<?php echo htmlspecialchars(@$_REQUEST['phone']); ?>" size="50" /></td>
 </tr>

3)CMSF > Admin > セクションエディタリスト > アカウント管理 >「編集」で以下を追加して下さい。
※ CMSF > アカウント管理 > 上級級操作(アドミン:セクションエディタ)> 「go」でも同じ画面にアクセスできます。

フィールドラベル:住所
フィールドタイプ:テキストフィールド
フィールド名:address

フィールドラベル:電話番号
フィールドタイプ:テキストフィールド
フィールド名:phone

以上です。

プロフィール編集【profile.php】に上記内容の入力画面を作成するにも、【signup.php】の場合と同じ様に編集して下さい。
但し1-A の add user の編集は update user で行って下さい。内容は同じです。
アバター
cmsfactory4
Site Admin
 
記事: 78
登録日時: 2010年4月13日(火) 20:53

Return to アドオン・プラグイン

オンラインデータ

このフォーラムを閲覧中のユーザー: なし & ゲスト[2人]

cron