本文整理汇总了PHP中SC_Helper_Customer_Ex::sfEditCustomerData方法的典型用法代码示例。如果您正苦于以下问题:PHP SC_Helper_Customer_Ex::sfEditCustomerData方法的具体用法?PHP SC_Helper_Customer_Ex::sfEditCustomerData怎么用?PHP SC_Helper_Customer_Ex::sfEditCustomerData使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类SC_Helper_Customer_Ex
的用法示例。
在下文中一共展示了SC_Helper_Customer_Ex::sfEditCustomerData方法的9个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: createCustomers
/**
* テスト用 会員データ を生成する.
*
* @return void
*/
function createCustomers()
{
lfPrintLog("createCustomers START.(" . CUSTOMERS_VOLUME . " data)");
for ($i = 0; $i < CUSTOMERS_VOLUME; $i++) {
lfPrintLog("----------");
lfPrintLog("creating customer data count:[" . ($i + 1) . "] start.");
$sqlval['name01'] = "検証";
$sqlval['name02'] = sprintf("太郎%05d", $i + 1);
$sqlval['kana01'] = "ケンショウ";
$sqlval['kana02'] = "タロウ";
$sqlval['zip01'] = '101';
$sqlval['zip02'] = '0051';
$sqlval['pref'] = '13';
// 13:東京都
$sqlval['addr01'] = "千代田区神田神保町";
$sqlval['addr02'] = "1-3-5";
$sqlval['tel01'] = '012';
$sqlval['tel02'] = '3456';
$sqlval['tel03'] = '7890';
$sqlval['email'] = EMAIL_ADDRESS_ACCOUNT . "+" . sprintf("%05d", $i + 1) . EMAIL_ADDRESS_DOMAIN;
$sqlval['sex'] = '1';
// 1:男性 2:女性
$sqlval['password'] = 'test';
$sqlval['reminder'] = '1';
// 1:「母親の旧姓は?」
$sqlval['reminder_answer'] = "てすと";
$sqlval['mailmaga_flg'] = (string) '1';
// 1:HTMLメール 2:テキストメール 3:希望しない
// 生年月日の作成
$sqlval['birth'] = SC_Utils_Ex::sfGetTimestamp(2006, 9, 1);
// 仮会員 1 本会員 2
$sqlval['status'] = '2';
/*
* secret_keyは、テーブルで重複許可されていない場合があるので、
* 本会員登録では利用されないがセットしておく。
*/
$sqlval['secret_key'] = SC_Helper_Customer_Ex::sfGetUniqSecretKey();
// 入会時ポイント
$CONF = SC_Helper_DB_Ex::sfGetBasisData();
$sqlval['point'] = $CONF['welcome_point'];
// 会員データの生成
SC_Helper_Customer_Ex::sfEditCustomerData($sqlval);
print "*";
lfPrintLog("creating customer data count:[" . ($i + 1) . "] end.");
}
print "\n";
lfPrintLog("createCustomers DONE.(" . CUSTOMERS_VOLUME . " data created)");
}
示例2: delete
/**
* 会員を削除する処理
*
* @param integer $customer_id 会員ID
* @return boolean true:成功 false:失敗
*/
public static function delete($customer_id)
{
$arrData = SC_Helper_Customer_Ex::sfGetCustomerDataFromId($customer_id, 'del_flg = 0');
if (SC_Utils_Ex::isBlank($arrData)) {
//対象となるデータが見つからない。
return false;
}
// XXXX: 仮会員は物理削除となっていたが論理削除に変更。
$arrVal = array('del_flg' => '1');
SC_Helper_Customer_Ex::sfEditCustomerData($arrVal, $customer_id);
return true;
}
示例3: lfRegistData
/**
* 登録処理
*
* @param array $objFormParam フォームパラメータークラス
* @return array エラー配列
*/
public function lfRegistData(&$objFormParam)
{
// 登録用データ取得
$arrData = $objFormParam->getDbArray();
// 足りないものを作る
if (!SC_Utils_Ex::isBlank($objFormParam->getValue('year'))) {
$arrData['birth'] = $objFormParam->getValue('year') . '/' . $objFormParam->getValue('month') . '/' . $objFormParam->getValue('day') . ' 00:00:00';
}
if (!is_numeric($arrData['customer_id'])) {
$arrData['secret_key'] = SC_Utils_Ex::sfGetUniqRandomId('r');
} else {
$arrOldCustomerData = SC_Helper_Customer_Ex::sfGetCustomerData($arrData['customer_id']);
if ($arrOldCustomerData['status'] != $arrData['status']) {
$arrData['secret_key'] = SC_Utils_Ex::sfGetUniqRandomId('r');
}
}
return SC_Helper_Customer_Ex::sfEditCustomerData($arrData, $arrData['customer_id']);
}
示例4: lfRegistCustomerData
/**
* 会員情報を登録する
*
* @param mixed $objFormParam
* @param mixed $customer_id
* @access private
* @return void
*/
function lfRegistCustomerData(&$objFormParam, $customer_id)
{
$arrRet = $objFormParam->getHashArray();
$sqlval = $objFormParam->getDbArray();
$sqlval['birth'] = SC_Utils_Ex::sfGetTimestamp($arrRet['year'], $arrRet['month'], $arrRet['day']);
SC_Helper_Customer_Ex::sfEditCustomerData($sqlval, $customer_id);
}
示例5: lfCheckForgotSecret
/**
* 秘密の質問確認
*
* @param array $arrForm フォーム入力値
* @param array $arrReminder リマインダー質問リスト
* @return string エラー文字列 問題が無ければNULL
*/
function lfCheckForgotSecret(&$arrForm, &$arrReminder)
{
$errmsg = '';
$objQuery =& SC_Query_Ex::getSingletonInstance();
$cols = 'customer_id, reminder, reminder_answer, salt';
$table = 'dtb_customer';
$where = '(email Like ? OR email_mobile Like ?)' . ' AND name01 Like ? AND name02 Like ?' . ' AND status = 2 AND del_flg = 0';
$arrVal = array($arrForm['email'], $arrForm['email'], $arrForm['name01'], $arrForm['name02']);
$result = $objQuery->select($cols, $table, $where, $arrVal);
if (isset($result[0]['reminder']) and isset($arrReminder[$result[0]['reminder']]) and $result[0]['reminder'] == $arrForm['reminder']) {
$is_authorized = false;
if (empty($result[0]['salt'])) {
// 旧バージョン(2.11未満)からの移行を考慮
if ($result[0]['reminder_answer'] == $arrForm['reminder_answer']) {
$is_authorized = true;
}
} elseif (SC_Utils_Ex::sfIsMatchHashPassword($arrForm['reminder_answer'], $result[0]['reminder_answer'], $result[0]['salt'])) {
$is_authorized = true;
}
if ($is_authorized) {
// 秘密の答えが一致
// 新しいパスワードを設定する
$new_password = GC_Utils_Ex::gfMakePassword(8);
if (FORGOT_MAIL == 1) {
// メールで変更通知をする
$objDb = new SC_Helper_DB_Ex();
$CONF = $objDb->sfGetBasisData();
$this->lfSendMail($CONF, $arrForm['email'], $arrForm['name01'], $new_password);
}
$sqlval = array();
$sqlval['password'] = $new_password;
SC_Helper_Customer_Ex::sfEditCustomerData($sqlval, $result[0]['customer_id']);
$arrForm['new_password'] = $new_password;
} else {
// 秘密の答えが一致しなかった
$errmsg = '秘密の質問が一致しませんでした。';
}
} else {
//不正なアクセス リマインダー値が前画面と異なる。
// 新リファクタリング基準ではここで遷移は不許可なのでエラー表示
//SC_Utils_Ex::sfDispSiteError(PAGE_ERROR, '', true);
$errmsg = '秘密の質問が一致しませんでした。';
}
return $errmsg;
}
示例6: doContBillResult
/**
*
* @deprecated 重複決済される
* @param unknown $accountDay
*/
function doContBillResult($accountDay)
{
if ($accountDay == null) {
$accountDay = $this->getAccountDay();
}
$objQuery = SC_Query_Ex::getSingletonInstance();
$curl = $this->curl_init();
do {
$zip_file = CSV_TEMP_REALDIR . "auone/" . date("Y/m/d/His") . ".zip";
if (file_exists($zip_file)) {
sleep(5);
}
} while (file_exists($zip_file));
SC_Utils_Ex::recursiveMkdir(dirname($zip_file));
$fp = fopen($zip_file, "w");
// FIXME 決済認可
$curl = $this->curl_init(false, true);
// $post_history = array ();
$post = $this->getPost("ContBillResult", $this->config, compact("accountDay"));
curl_setopt($curl, CURLOPT_POSTFIELDS, http_build_query($post));
curl_setopt($curl, CURLOPT_HEADER, FALSE);
curl_setopt($curl, CURLOPT_FILE, $fp);
curl_exec($curl);
$zip = new ZipArchive();
if (!$zip->open($zip_file)) {
SC_Utils_Ex::sfDispSiteError(PAGE_ERROR);
}
$extr = dirname($zip_file) . "/" . basename($zip_file, ".zip") . "/";
SC_Utils_Ex::recursiveMkdir($extr);
if (!$zip->extractTo($extr)) {
SC_Utils_Ex::sfDispSiteError(PAGE_ERROR);
}
$files = glob($extr . "*.csv");
foreach ($files as $file) {
$enc_filepath = SC_Utils_Ex::sfEncodeFile($file, CHAR_CODE, dirname($file) . DIRECTORY_SEPARATOR);
$fp2 = fopen($enc_filepath, "r");
fgetcsv($fp2);
while ($arrCsv = fgetcsv($fp2)) {
if (count($arrCsv) == 0) {
// 空の列
continue;
}
if ($arrCsv[4] != $this->config["serviceId"]) {
// 別サービス・チェック
continue;
}
if ($arrCsv[8] != 'MPL01000') {
// 取消レコード
continue;
}
$pay_info_no = $arrCsv[1];
$amount_in_tax = $arrCsv[2];
$service_id = $arrCsv[4];
$au_open_id = $arrCsv[5];
$member_manage_no = $arrCsv[6];
$process_day = $arrCsv[11];
$cont_bill_regst_day = $arrCsv[13];
$continue_account_id = $arrCsv[19];
$amount = $amount_in_tax - $amount_in_tax % 100;
$add_point = $amount;
$where = "au_open_id =? AND status = 2 AND del_flg = 0";
$arrWhereVal = (array) $au_open_id;
$customer = SC_Helper_Customer_Ex::sfGetCustomerDataFromId(null, $where, $arrWhereVal);
if (SC_Utils_Ex::isBlank($customer)) {
// ユーザー復旧は手動の方がいいかもしれない。
continue;
}
$name = "継続(" . $amount_in_tax . "円)";
$customer_id = $customer["customer_id"];
if ($add_point) {
$lost_point = 0;
// 更新後ポイント
$updatePoint = array("point" => min($customer["point"] + $add_point, AU_MAXPOINT));
// 最大ポイントへ変更している場合は失効ポイントを計算
if ($updatePoint["point"] == AU_MAXPOINT) {
$lost_point = max($customer["point"] + $add_point, AU_MAXPOINT) - AU_MAXPOINT;
}
SC_Helper_Customer_Ex::sfEditCustomerData($updatePoint, $customer_id);
$objQuery->insert("cp_dtb_point_history", array("id" => $objQuery->nextVal("cp_dtb_point_history_id"), "customer_id" => $customer_id, "add_point" => $add_point, "use_point" => 0, "lost_point" => $lost_point, "order_id" => 0, "name" => $name, "create_date" => "NOW()", "update_date" => "NOW()"));
$arrWhereVal[] = $continue_account_id;
if ($objQuery->exists("cp_dtb_customer_transaction", "au_open_id=? AND del_flg=0 AND continue_account_id =?", $arrWhereVal)) {
// 何かしらの影響で削除された場合後続処理を行う
continue;
}
$objQuery->insert("cp_dtb_customer_transaction", array("id" => $objQuery->nextVal("cp_dtb_customer_transaction_id"), "customer_id" => $customer_id, "au_open_id" => $au_open_id, "transaction_id" => "", "transaction_status" => "40", "pay_info_no" => $pay_info_no, "pay_status" => 20, "continue_account_id" => $continue_account_id, "member_manage_no" => $member_manage_no, "process_day" => $process_day, "process_time" => "000000", "cont_bill_regst_day" => $cont_bill_regst_day, "cont_bill_regst_time" => "000000", "ammount" => $amount, "ammount_in_tax" => $amount_in_tax, "del_flg" => 0, "contents_id" => sprintf("%05d%09d", $service_id, $add_point), "status" => 0));
}
}
}
}
示例7: action
/**
* Page のアクション.
*
* @return void
*/
public function action()
{
$objQuery = SC_Query_Ex::getSingletonInstance();
parent::action();
switch ($this->getMode()) {
case "operate_cancel_cont_bill":
$objFormParam = new SC_FormParam_Ex();
$objFormSearchParam = new SC_FormParam_Ex();
// パラメーター処理
$this->lfInitParam($objFormParam);
$objFormParam->setParam($_POST);
$objFormParam->convParam();
// 入力パラメーターチェック
$this->arrErr = $this->lfCheckError($objFormParam);
$this->arrForm = $objFormParam->getHashArray();
// 検索引き継ぎ用パラメーター処理
$this->lfInitSearchParam($objFormSearchParam);
$objFormSearchParam->setParam($objFormParam->getValue('search_data'));
$this->arrSearchErr = $this->lfCheckErrorSearchParam($objFormSearchParam);
$this->arrSearchData = $objFormSearchParam->getSearchArray();
break;
}
GC_Utils_Ex::gfDebugLog($this->arrErr);
$objDb = new SC_Helper_DB_Ex();
$this->customer_id = $this->arrForm['customer_id'];
$this->customer = SC_Helper_Customer_Ex::sfGetCustomerData($this->customer_id);
// モードによる処理切り替え
switch ($this->getMode()) {
case 'confirm':
// 購入履歴情報の取得 (ポイント付与でエラーチェックに通らない時用)
list($this->tpl_linemax, $this->arrPurchaseHistory, $this->objNavi) = $this->lfPurchaseHistory($this->customer_id);
break;
case "operate_cancel_cont_bill":
list($this->tpl_linemax, $this->arrPurchaseHistory, $this->objNavi) = $this->lfPurchaseHistory($this->customer_id);
$curl = $this->curl_init(true, false);
$transactionId = $_REQUEST["au_payment_transaction_id"];
$config = SC_AuonePayment_Ex::getConfig();
if (strlen($transactionId) == 32) {
$post = $this->getPost("OperateCancelContBill", $config, compact("transactionId"));
curl_setopt($curl, CURLOPT_POSTFIELDS, http_build_query($post));
$result = $this->curl_result($curl);
$result["post_history"] = $post;
$this->arrErr["au_payment_transaction_id"] = $this->check_result($result, array());
$this->arrErr = array_filter($this->arrErr);
if (!isset($this->arrErr["au_payment_transaction_id"])) {
$curl = $this->curl_init(true);
// FIXME 状態確認
$post = $this->getPost("ConditionInquiryForPayTranStat", $config, compact("transactionId"));
curl_setopt($curl, CURLOPT_POSTFIELDS, http_build_query($post));
$result = $this->curl_result($curl);
$arrWhereVal = array("del_flg" => 1, "transaction_status" => $result["body"]["transactionStatus"], "pay_status" => $result["body"]["payStatus"]);
$arrWhereVal = array_filter($arrWhereVal, "strlen");
$objQuery->update("cp_dtb_customer_transaction", $arrWhereVal, "transaction_id = ? AND del_flg = 0", array($transactionId));
}
} else {
$this->arrErr["au_payment_transaction_id"] = "不正な処理";
}
break;
}
if ($objDb->sfColumnExists("cp_dtb_customer_transaction", "id")) {
$objQuery->setOrder("id DESC");
$this->customer["transaction"] = $objQuery->select("*", "cp_dtb_customer_transaction", "\n customer_id = ?\n AND continue_account_id IS NOT NULL\n AND transaction_status = '40'\n ", array($this->customer_id));
$this->customer["transaction2"] = $objQuery->select("*", "cp_dtb_customer_transaction", "\n customer_id = ?\n AND continue_account_id IS NULL\n AND transaction_status = '40'\n ", array($this->customer_id));
$objQuery->setOrder("");
if (count($this->customer["transaction"]) == 0 && $this->customer["status"] == "2") {
SC_Helper_Customer_Ex::sfEditCustomerData(array("status" => 1), $this->customer_id);
$this->arrForm["status"]["value"] = 1;
}
}
foreach ($this->arrErr as $msg) {
$this->tpl_onload .= ";console.log('{$msg}');";
}
}
示例8: lfRegistCustomerData
/**
* 会員情報の登録
*
* @access private
* @return uniqid
*/
public function lfRegistCustomerData($sqlval)
{
SC_Helper_Customer_Ex::sfEditCustomerData($sqlval);
return $sqlval['secret_key'];
}
示例9: lfDoDeleteCustomer
/**
* 顧客を削除する処理
*
* @param integer $customer_id 顧客ID
* @return boolean true:成功 false:失敗
*/
function lfDoDeleteCustomer($customer_id)
{
$arrData = SC_Helper_Customer_Ex::sfGetCustomerDataFromId($customer_id, "del_flg = 0");
if (SC_Utils_Ex::isBlank($arrData)) {
//対象となるデータが見つからない。
return false;
}
// XXXX: 仮会員は物理削除となっていたが論理削除に変更。
$arrVal["del_flg"] = "1";
$arrVal["update_date"] = 'CURRENT_TIMESTAMP';
SC_Helper_Customer_Ex::sfEditCustomerData($arrVal, $customer_id);
return true;
}