本文整理汇总了PHP中Cookie::write方法的典型用法代码示例。如果您正苦于以下问题:PHP Cookie::write方法的具体用法?PHP Cookie::write怎么用?PHP Cookie::write使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Cookie
的用法示例。
在下文中一共展示了Cookie::write方法的10个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: updateCustomer
/**
* Update context after customer login
* @param Customer $customer Created customer
*/
public function updateCustomer(Customer $customer)
{
$this->customer = $customer;
$this->cookie->id_customer = (int) $customer->id;
$this->cookie->customer_lastname = $customer->lastname;
$this->cookie->customer_firstname = $customer->firstname;
$this->cookie->passwd = $customer->passwd;
$this->cookie->logged = 1;
$customer->logged = 1;
$this->cookie->email = $customer->email;
$this->cookie->is_guest = $customer->isGuest();
$this->cart->secure_key = $customer->secure_key;
if (Configuration::get('PS_CART_FOLLOWING') && (empty($this->cookie->id_cart) || Cart::getNbProducts($this->cookie->id_cart) == 0) && ($id_cart = (int) Cart::lastNoneOrderedCart($this->customer->id))) {
$this->cart = new Cart($id_cart);
} else {
$id_carrier = (int) $this->cart->id_carrier;
$this->cart->id_carrier = 0;
$this->cart->setDeliveryOption(null);
$this->cart->id_address_delivery = (int) Address::getFirstCustomerAddressId((int) $customer->id);
$this->cart->id_address_invoice = (int) Address::getFirstCustomerAddressId((int) $customer->id);
}
$this->cart->id_customer = (int) $customer->id;
if (isset($id_carrier) && $id_carrier) {
$delivery_option = [$this->cart->id_address_delivery => $id_carrier . ','];
$this->cart->setDeliveryOption($delivery_option);
}
$this->cart->save();
$this->cookie->id_cart = (int) $this->cart->id;
$this->cookie->write();
$this->cart->autosetProductAddress();
}
示例2: initContent
/**
* Preparing hidden form with payment data before sending it to Dotpay
*/
public function initContent()
{
parent::initContent();
$this->display_column_left = false;
$this->display_header = false;
$this->display_footer = false;
$cartId = 0;
if (Tools::getValue('order_id') == false) {
$cartId = $this->context->cart->id;
$exAmount = $this->api->getExtrachargeAmount(true);
if ($exAmount > 0 && !$this->isExVPinCart()) {
$productId = $this->config->getDotpayExchVPid();
if ($productId != 0) {
$product = new Product($productId, true);
$product->price = $exAmount;
$product->save();
$product->flushPriceCache();
$this->context->cart->updateQty(1, $product->id);
$this->context->cart->update();
$this->context->cart->getPackageList(true);
}
}
$discAmount = $this->api->getDiscountAmount();
if ($discAmount > 0) {
$discount = new CartRule($this->config->getDotpayDiscountId());
$discount->reduction_amount = $this->api->getDiscountAmount();
$discount->reduction_currency = $this->context->cart->id_currency;
$discount->reduction_tax = 1;
$discount->update();
$this->context->cart->addCartRule($discount->id);
$this->context->cart->update();
$this->context->cart->getPackageList(true);
}
$result = $this->module->validateOrder($this->context->cart->id, (int) $this->config->getDotpayNewStatusId(), $this->getDotAmount(), $this->module->displayName, NULL, array(), NULL, false, $this->customer->secure_key);
} else {
$this->context->cart = Cart::getCartByOrderId(Tools::getValue('order_id'));
$this->initPersonalData();
$cartId = $this->context->cart->id;
}
$this->api->onPrepareAction(Tools::getValue('dotpay_type'), array('order' => Order::getOrderByCartId($cartId), 'customer' => $this->context->customer->id));
$sa = new DotpaySellerApi($this->config->getDotpaySellerApiUrl());
if ($this->config->isDotpayDispInstruction() && $this->config->isApiConfigOk() && $this->api->isChannelInGroup(Tools::getValue('channel'), array(DotpayApi::cashGroup, DotpayApi::transfersGroup)) && $sa->isAccountRight($this->config->getDotpayApiUsername(), $this->config->getDotpayApiPassword(), $this->config->getDotpayApiVersion())) {
$this->context->cookie->dotpay_channel = Tools::getValue('channel');
Tools::redirect($this->context->link->getModuleLink($this->module->name, 'confirm', array('order_id' => Order::getOrderByCartId($cartId))));
die;
}
$this->context->smarty->assign(array('hiddenForm' => $this->api->getHiddenForm()));
$cookie = new Cookie('lastOrder');
$cookie->orderId = Order::getOrderByCartId($cartId);
$cookie->write();
$this->setTemplate("preparing.tpl");
}
示例3: end
public static function end()
{
// cookie details
$name = Config::get('session.name', 'anchorcms');
$expire = time() + Config::get('session.expire', 86400);
$path = Config::get('session.path', '/');
$domain = Config::get('session.domain', '');
// update db session
Db::update('sessions', array('date' => date(DATE_ISO8601), 'ip' => Input::ip_address(), 'ua' => Input::user_agent(), 'data' => serialize(static::$data)), array('id' => static::$id));
// create cookie with ID
if (!Cookie::write($name, static::$id, $expire, $path, $domain)) {
Log::error('Could not write session cookie: ' . static::$id);
}
}
示例4: initContent
/**
* @see FrontController::initContent()
*/
public function initContent()
{
parent::initContent();
try {
$resp = new Maestrano_Saml_Response($_POST['SAMLResponse']);
// Check if the Saml response is valid
if ($resp->isValid()) {
// Get the user as well as the user group
$mnoUser = new Maestrano_Sso_User($resp);
// intilize the user Model
$userModel = new Maestrano_Sso_Model_User();
// Find user in db by email if not exist then create locally
$userResp = $userModel->findOrCreate($mnoUser);
if ($userResp['id_employee'] > 0) {
//update the Cookie for prestashop
$cookie = new Cookie('psAdmin');
$cookie->id_employee = $userResp['id_employee'];
$cookie->email = $mnoUser->email;
$cookie->profile = $userResp['id_profile'];
$cookie->passwd = $userResp['passwd'];
$cookie->remote_addr = (int) ip2long(Tools::getRemoteAddr());
$cookie->last_activity = time();
// write the cookie in Prestashop session
$cookie->write();
// Once the user is created/identified, we store the maestrano session.
// This session will be used for single logout
$mnoSession = new Maestrano_Sso_Session($_SESSION, $mnoUser);
$mnoSession->save();
// If logged in redirect to admin dashboard startup page
if ($cookie->id_employee) {
$cookie = new Cookie('psAdDir');
Tools::redirect(Tools::getCurrentUrlProtocolPrefix() . Tools::getShopDomain() . __PS_BASE_URI__ . $cookie->admin_directory);
}
}
} else {
echo '<p>There was an error during the authentication process.</p><br/>';
echo '<p>Please try again. If issue persists please contact support@maestrano.com<p>';
exit;
}
} catch (Exception $ex) {
echo $ex;
exit;
}
}
示例5: cookieForAdminDirectory
/**
* Generate cookie for admin directory becuase prestashop have dynamic names of admin directory
*
* @return the directory name
*/
public function cookieForAdminDirectory()
{
$pageURL = 'http';
if (isset($_SERVER["HTTPS"]) && $_SERVER["HTTPS"] == "on") {
$pageURL .= "s";
}
$pageURL .= "://";
if ($_SERVER["SERVER_PORT"] != "80") {
$pageURL .= $_SERVER["SERVER_NAME"] . ":" . $_SERVER["SERVER_PORT"] . $_SERVER["REQUEST_URI"];
} else {
$pageURL .= $_SERVER["SERVER_NAME"] . $_SERVER["REQUEST_URI"];
}
$pageURL = str_replace(Tools::getCurrentUrlProtocolPrefix() . Tools::getShopDomain() . __PS_BASE_URI__, '', $pageURL);
$pageURL = str_replace(basename($pageURL), '', $pageURL);
// Write cookie for the Admin directory
$cookie = new Cookie('psAdDir');
$cookie->admin_directory = $pageURL;
$cookie->write();
return $pageURL;
}
示例6: authenticate
/**
* Autentica um usuário.
*
* @param string $id ID do usuário
* @param string $password Senha do usuário
* @return void
*/
public function authenticate($id, $password)
{
Cookie::set("domain", $this->domain);
Cookie::set("path", $this->path);
Cookie::set("secure", $this->secure);
Cookie::write("user_id", $id, $this->expires);
Cookie::write("password", $password, $this->expires);
}
示例7: Employee
$errors[] = Tools::displayError('Invalid password');
} else {
/* Seeking for employee */
$employee = new Employee();
$employee = $employee->getByemail($email, $passwd);
if (!$employee) {
$errors[] = Tools::displayError('Employee does not exist or password is incorrect.');
$cookie->logout();
} else {
/* Creating cookie */
$cookie->id_employee = $employee->id;
$cookie->email = $employee->email;
$cookie->profile = $employee->id_profile;
$cookie->passwd = $employee->passwd;
$cookie->remote_addr = ip2long(Tools::getRemoteAddr());
$cookie->write();
/* Redirect to admin panel */
if (isset($_GET['redirect'])) {
$url = strval($_GET['redirect'] . (isset($_GET['token']) ? '&token=' . $_GET['token'] : ''));
} else {
$url = 'index.php';
}
if (!Validate::isCleanHtml($url)) {
die(Tools::displayError());
}
echo '<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="' . $iso . '" lang="' . $iso . '">
<meta http-equiv="Refresh" content="0;URL=' . Tools::safeOutput($url, true) . '">
<head>
<script language="javascript" type="text/javascript">
window.location.replace("' . Tools::safeOutput($url, true) . '");
示例8: init
public function init()
{
global $cookie, $smarty, $cart, $iso, $defaultCountry, $protocol_link, $protocol_content, $link, $css_files, $js_files;
if (self::$initialized) {
return;
}
self::$initialized = true;
$css_files = array();
$js_files = array();
if ($this->ssl and (empty($_SERVER['HTTPS']) or strtolower($_SERVER['HTTPS']) == 'off') and Configuration::get('PS_SSL_ENABLED')) {
header('HTTP/1.1 301 Moved Permanently');
header('Location: ' . Tools::getShopDomainSsl(true) . $_SERVER['REQUEST_URI']);
exit;
}
ob_start();
/* Loading default country */
$defaultCountry = new Country((int) Configuration::get('PS_COUNTRY_DEFAULT'), Configuration::get('PS_LANG_DEFAULT'));
$cookie = new Cookie('ps');
$link = new Link();
if ($this->auth and !$cookie->isLogged($this->guestAllowed)) {
Tools::redirect('authentication.php' . ($this->authRedirection ? '?back=' . $this->authRedirection : ''));
}
/* Theme is missing or maintenance */
if (!is_dir(_PS_THEME_DIR_)) {
die(Tools::displayError('Current theme unavailable. Please check your theme directory name and permissions.'));
} elseif (basename($_SERVER['PHP_SELF']) != 'disabled.php' and !(int) Configuration::get('PS_SHOP_ENABLE')) {
$this->maintenance = true;
} elseif (Configuration::get('PS_GEOLOCATION_ENABLED')) {
if (!isset($cookie->iso_code_country)) {
if ($cookie->logged) {
$id_country = Customer::getCurrentCountry((int) $cookie->id_customer);
$cookie->iso_code_country = Country::getIsoById($id_country);
} else {
$this->geolocationManagement();
}
}
if (!isset($cookie->iso_code_country)) {
$current_country_id = Customer::getCurrentCountry((int) $cookie->id_customer);
} else {
$current_country_id = Country::getByIso($cookie->iso_code_country);
}
$current_country = new Country($current_country_id, 1);
$cookie->id_country = $current_country->id;
$smarty->assign('current_country', $current_country->name);
$smarty->assign('current_country_id', $current_country->id);
if ($cookie->id_country == 110 && !isset($cookie->id_currency)) {
$cookie->id_currency = 4;
}
}
//set imagesize if not set
if (!isset($cookie->image_size)) {
$cookie->image_size = IMAGE_SIZE_LARGE;
$cookie->write();
}
if (!isset($cookie->greetings) && !$cookie->logged) {
$cookie->greetings = 1;
$cookie->write();
$smarty->assign('show_greetings', 1);
}
//echo $cookie->image_size;
if ($image_size = Tools::getValue("is")) {
if ($image_size == "s" && $cookie->image_size == IMAGE_SIZE_LARGE) {
$cookie->image_size = IMAGE_SIZE_SMALL;
$cookie->write();
} else {
if ($image_size == "l" && $cookie->image_size == IMAGE_SIZE_SMALL) {
$cookie->image_size = IMAGE_SIZE_LARGE;
$cookie->write();
}
}
}
// Switch language if needed and init cookie language
if ($iso = Tools::getValue('isolang') and Validate::isLanguageIsoCode($iso) and $id_lang = (int) Language::getIdByIso($iso)) {
$_GET['id_lang'] = $id_lang;
}
Tools::switchLanguage();
Tools::setCookieLanguage();
/* attribute id_lang is often needed, so we create a constant for performance reasons */
if (!defined('_USER_ID_LANG_')) {
define('_USER_ID_LANG_', (int) $cookie->id_lang);
}
if (isset($_GET['logout']) or $cookie->logged and Customer::isBanned((int) $cookie->id_customer)) {
$cookie->logout();
Tools::redirect(isset($_SERVER['HTTP_REFERER']) ? $_SERVER['HTTP_REFERER'] : NULL);
} elseif (isset($_GET['mylogout'])) {
$this->logoutFacebook();
$cookie->mylogout();
Tools::redirect(isset($_SERVER['HTTP_REFERER']) ? $_SERVER['HTTP_REFERER'] : NULL);
}
if ($source = Tools::getValue('utm_source')) {
$cookie->last_source = $source;
$cookie->write();
}
if ($ref_source = Tools::getValue('vbref')) {
$cookie->last_ref_source = $ref_source;
$cookie->write();
}
/*else
{
if(!isset($cookie->last_ref_source))
//.........这里部分代码省略.........
示例9: __beforeAction
public function __beforeAction()
{
// User authentication
$user_model = new User_Model();
User_Model::$auth_status = User_Model::AUTH_STATUS_NOT_LOGGED;
// Authentication by post
if (isset($_POST['username']) && isset($_POST['password'])) {
$username = $_POST['username'];
$password = $_POST['password'];
try {
if (!preg_match('#^[a-z0-9-]+$#', $username)) {
throw new Exception('Invalid username');
}
if ($user_model->authenticate($username, $password)) {
User_Model::$auth_status = User_Model::AUTH_STATUS_LOGGED;
// Write session and cookie to remember sign-in
Cookie::write('login', Encryption::encode($username . ':' . $password), 60 * 24 * 3600);
Session::write('username', $username);
} else {
throw new Exception('Bad username or password');
}
} catch (Exception $e) {
User_Model::$auth_status = User_Model::AUTH_STATUS_BAD_USERNAME_OR_PASSWORD;
Cookie::delete('login');
Session::delete('username');
}
} else {
// Authentication by session
if (($username = Session::read('username')) !== null) {
try {
$user_model->loadUser($username);
User_Model::$auth_status = User_Model::AUTH_STATUS_LOGGED;
} catch (Exception $e) {
Session::delete('username');
Cookie::delete('login');
}
// Authentication by cookies
} else {
if (($login = Cookie::read('login')) !== null) {
try {
if (isset($login) && ($login = Encryption::decode($login))) {
$login = explode(':', $login);
$username = $login[0];
if (!preg_match('#^[a-z0-9-]+$#', $username)) {
throw new Exception('Invalid username');
}
array_splice($login, 0, 1);
$password = implode(':', $login);
if ($user_model->authenticate($username, $password)) {
User_Model::$auth_status = User_Model::AUTH_STATUS_LOGGED;
// Write session to remember sign-in
Session::write('username', $username);
} else {
throw new Exception('Bad username or password');
}
} else {
throw new Exception('Invalid user cookie');
}
} catch (Exception $e) {
Cookie::delete('login');
}
}
}
}
}
示例10: rtrim
$page_address = rtrim($page_address, '?&');
header('Location: http://' . $_SERVER['HTTP_HOST'] . $page_address);
exit;
}
// Security : The $_POST variables are wiped if the referer domain is different from the current domain
if (isset($_SERVER['HTTP_REFERER']) && $_SERVER['HTTP_REFERER'] != '' && !preg_match('#^https?://' . preg_quote($_SERVER['SERVER_NAME']) . '#', $_SERVER['HTTP_REFERER'])) {
// On vide $_POST
$_POST = array();
}
// Removing special characters from $_POST variables (they may be a problem with DB or AJAX)
foreach ($_POST as $key => $value) {
if (!is_array($value)) {
$value = preg_replace('#[\\x01-\\x08\\x0B\\x0C\\x0E-\\x1F]#', '', $value);
}
}
// Detection of mobile device
$is_mobile = !empty($_SERVER['X_WAP_PROFILE']) || preg_match('#(text/vnd\\.wap\\.wml|application/vnd.wap.xhtml)#', $_SERVER['HTTP_ACCEPT']) || preg_match('#(?<![a-z])(' . 'iphone|ipod|symbian|nokia|wap|vodafone|pocket|' . 'ipad|sonyericsson|motorola|android|opera mini|' . 'blackberry|palm os|palm|hiptop|avantgo|plucker|' . 'xiino|blazer|elaine|iris|3g_t|windows ce|opera mobi|' . 'windows ce; smartphone|windows ce; iemobile|' . 'mini 9\\.5|vx1000|lge|m800|e860|u940|ux840|compal|' . 'wireless|mobi|ahong|lg380|lgku|lgu900|lg210|' . 'lg47|lg920|lg840|lg370|sam-r|mg50|s55|g83|t66|' . 'vx400|mk99|d615|d763|el370|sl900|mp500|samu3|' . 'samu4|vx10|xda|samu5|samu6|samu7|samu9|a615|' . 'b832|m881|s920|n210|s700|c-810|h797|mob-x|treo|' . 'sk16d|848b|mowser|s580|r800|471x|v120|rim8|' . 'c500foma|160x|x160|480x|x640|t503|w839|i250|' . 'sprint|w398samr810|m5252|c7100|mt126|x225|s5330|' . 's820|htil-g1|fly v71|s302|x113|novarra|k610i|' . 'three|8325rc|8352rc|sanyo|vx54|c888|nx250|n120|' . 'mtk|c5588|s710|t880|c5005|i;458x|p404i|s210|' . 'c5100|teleca|s940|c500|s590|foma|samsu|vx8|vx9|' . 'a1000|mms|myx|a700|gu1100|bc831|e300|ems100|' . 'me701|me702m-three|sd588|s800|8325rc|ac831|mw200|' . 'brew|d88|htc|355x|m50|km100|d736|kindle|mobile|' . 'p-9521|telco|sl74|ktouch|m4u\\/|me702|8325rc|kddi|' . 'phone|lg|samsung|240x|x320|vx10|sony cmd|psp|' . 'up\\.browser|up\\.link|mmp|symbian|smartphone|midp' . ')(?![a-z])#i', $_SERVER['HTTP_USER_AGENT']);
// Mobile mode for the website
$mobile_mode = false;
if (isset($_GET['mobile'])) {
$mobile_mode = $_GET['mobile'] == 1 ? 1 : 0;
Cookie::write('mobile', (string) $mobile_mode, 60 * 24 * 3600);
} else {
if (isset($_COOKIE['mobile'])) {
$mobile_mode = $_COOKIE['mobile'] == 1 ? 1 : 0;
} else {
$mobile_mode = $is_mobile;
}
}
define('MOBILE_BROWSER', $is_mobile);
define('MOBILE_MODE', $mobile_mode);