本文整理汇总了PHP中Eccube\Framework\Util\Utils::sfGetRandomString方法的典型用法代码示例。如果您正苦于以下问题:PHP Utils::sfGetRandomString方法的具体用法?PHP Utils::sfGetRandomString怎么用?PHP Utils::sfGetRandomString使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Eccube\Framework\Util\Utils
的用法示例。
在下文中一共展示了Utils::sfGetRandomString方法的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: action
/**
* Page のAction.
*
* @return void
*/
public function action()
{
//決済処理中ステータスのロールバック
/* @var $objPurchase PurchaseHelper */
$objPurchase = Application::alias('eccube.helper.purchase');
$objPurchase->cancelPendingOrder(PENDING_ORDER_CANCEL_FLAG);
/* @var $objProduct Product */
$objProduct = Application::alias('eccube.product');
// パラメーター管理クラス
$objFormParam = Application::alias('eccube.form_param');
// パラメーター情報の初期化
$this->lfInitParam($objFormParam);
// 値の設定
$objFormParam->setParam($_REQUEST);
// 入力値の変換
$objFormParam->convParam();
// 値の取得
$this->arrForm = $objFormParam->getHashArray();
//modeの取得
$this->mode = $this->getMode();
//表示条件の取得
$this->arrSearchData = array('category_id' => $this->lfGetCategoryId(intval($this->arrForm['category_id'])), 'maker_id' => intval($this->arrForm['maker_id']), 'name' => $this->arrForm['name']);
$this->orderby = $this->arrForm['orderby'];
//ページング設定
$this->tpl_pageno = $this->arrForm['pageno'];
$this->disp_number = $this->lfGetDisplayNum($this->arrForm['disp_number']);
// 画面に表示するサブタイトルの設定
$this->tpl_subtitle = $this->lfGetPageTitle($this->mode, $this->arrSearchData['category_id']);
// 画面に表示する検索条件を設定
$this->arrSearch = $this->lfGetSearchConditionDisp($this->arrSearchData);
// 商品一覧データの取得
$arrSearchCondition = $this->lfGetSearchCondition($this->arrSearchData);
$this->tpl_linemax = $this->lfGetProductAllNum($arrSearchCondition);
$urlParam = "category_id={$this->arrSearchData['category_id']}&pageno=#page#";
// モバイルの場合に検索条件をURLの引数に追加
if (Application::alias('eccube.display')->detectDevice() === DEVICE_TYPE_MOBILE) {
$searchNameUrl = urlencode(mb_convert_encoding($this->arrSearchData['name'], 'SJIS-win', 'UTF-8'));
$urlParam .= "&mode={$this->mode}&name={$searchNameUrl}&orderby={$this->orderby}";
}
$this->objNavi = Application::alias('eccube.page_navi', $this->tpl_pageno, $this->tpl_linemax, $this->disp_number, 'eccube.movePage', NAVI_PMAX, $urlParam, Application::alias('eccube.display')->detectDevice() !== DEVICE_TYPE_MOBILE);
$this->arrProducts = $this->lfGetProductsList($arrSearchCondition, $this->disp_number, $this->objNavi->start_row, $objProduct);
switch ($this->getMode()) {
case 'json':
$this->doJson($objProduct);
break;
default:
$this->doDefault($objProduct, $objFormParam);
break;
}
$this->tpl_rnd = Utils::sfGetRandomString(3);
}
示例2: updateMemberData
/**
* 管理者データをUpdateする.
*
* @param array 管理者データの連想配列
* @return void
*/
public function updateMemberData($member_id, $arrMemberData)
{
$objQuery = Application::alias('eccube.query');
// Updateする値を作成する.
$sqlVal = array();
$sqlVal['name'] = $arrMemberData['name'];
$sqlVal['department'] = $arrMemberData['department'];
$sqlVal['login_id'] = $arrMemberData['login_id'];
$sqlVal['authority'] = $arrMemberData['authority'];
$sqlVal['work'] = $arrMemberData['work'];
$sqlVal['update_date'] = 'CURRENT_TIMESTAMP';
if ($arrMemberData['password'] != DEFAULT_PASSWORD) {
$salt = Utils::sfGetRandomString(10);
$sqlVal['salt'] = $salt;
$sqlVal['password'] = Utils::sfGetHashString($arrMemberData['password'], $salt);
}
$where = 'member_id = ?';
// UPDATEの実行
$objQuery->update('dtb_member', $sqlVal, $where, array($member_id));
}
示例3: sfEditCustomerData
/**
* 会員情報の登録・編集処理を行う.
*
* @param array $arrData 登録するデータの配列(FormParamのgetDbArrayの戻り値)
* @param array $customer_id nullの場合はinsert, 存在する場合はupdate
* @access public
* @return integer 登録編集したユーザーのcustomer_id
*/
public function sfEditCustomerData($arrData, $customer_id = null)
{
/* @var $objQuery Query*/
$objQuery = Application::alias('eccube.query');
$objQuery->begin();
$old_version_flag = false;
$arrData['update_date'] = 'CURRENT_TIMESTAMP';
// 更新日
// salt値の生成(insert時)または取得(update時)。
if (is_numeric($customer_id)) {
$salt = $objQuery->get('salt', 'dtb_customer', 'customer_id = ? ', array($customer_id));
// 旧バージョン(2.11未満)からの移行を考慮
if (strlen($salt) === 0) {
$old_version_flag = true;
}
} else {
$salt = Utils::sfGetRandomString(10);
$arrData['salt'] = $salt;
}
//-- パスワードの更新がある場合は暗号化
if ($arrData['password'] == DEFAULT_PASSWORD or $arrData['password'] == '') {
//更新しない
unset($arrData['password']);
} else {
// 旧バージョン(2.11未満)からの移行を考慮
if ($old_version_flag) {
$is_password_updated = true;
$salt = Utils::sfGetRandomString(10);
$arrData['salt'] = $salt;
}
$arrData['password'] = Utils::sfGetHashString($arrData['password'], $salt);
}
//-- 秘密の質問の更新がある場合は暗号化
if ($arrData['reminder_answer'] == DEFAULT_PASSWORD or $arrData['reminder_answer'] == '') {
//更新しない
unset($arrData['reminder_answer']);
// 旧バージョン(2.11未満)からの移行を考慮
if ($old_version_flag && $is_password_updated) {
// パスワードが更新される場合は、平文になっている秘密の質問を暗号化する
$reminder_answer = $objQuery->get('reminder_answer', 'dtb_customer', 'customer_id = ? ', array($customer_id));
$arrData['reminder_answer'] = Utils::sfGetHashString($reminder_answer, $salt);
}
} else {
// 旧バージョン(2.11未満)からの移行を考慮
if ($old_version_flag && !$is_password_updated) {
// パスワードが更新されない場合は、平文のままにする
unset($arrData['salt']);
} else {
$arrData['reminder_answer'] = Utils::sfGetHashString($arrData['reminder_answer'], $salt);
}
}
//デフォルト国IDを追加
if (FORM_COUNTRY_ENABLE == false) {
$arrData['country_id'] = DEFAULT_COUNTRY_ID;
}
//-- 編集登録実行
if (is_numeric($customer_id)) {
// 編集
$objQuery->update('dtb_customer', $arrData, 'customer_id = ? ', array($customer_id));
} else {
// 新規登録
// 会員ID
$customer_id = $objQuery->nextVal('dtb_customer_customer_id');
$arrData['customer_id'] = $customer_id;
// 作成日
if (is_null($arrData['create_date'])) {
$arrData['create_date'] = 'CURRENT_TIMESTAMP';
}
$objQuery->insert('dtb_customer', $arrData);
}
$objQuery->commit();
return $customer_id;
}