<?php
// +----------------------------------------------------------------------
// | easy pay [ pay to easy ]
// +----------------------------------------------------------------------
// | Copyright (c) 2016-2017 All rights reserved.
// +----------------------------------------------------------------------
// | Author: fengxing <QQ:51125330>
// +----------------------------------------------------------------------
namespace Index\Controller;
use Common\Controller\DefaultController;
class BaseController extends DefaultController {
protected $templateIndex='auto';

public function __construct(){
parent::__construct();
$this->initial();
}

private function initial(){
global $publicData;
$peizhi=$publicData['peizhi'];

//处理模板 cookie优先
if($peizhi['templatecookie']==1){
$templatename=cookie('templatenow');
}else{
$templatename=$peizhi['template'];
}
$this->templateIndex=$templatename;
$alltemplate=SL('Param')->template;
if($templatename=='auto' || empty($alltemplate[$templatename])){
$this->templateIndex='';
}

//apihttp如果与本站网址不一致对非支付接口页面进行跳转
if(!empty($peizhi['apihttp'])){
if($_SERVER['HTTP_HOST']==$peizhi['apihttp'] && !empty($peizhi['apijump'])){
if(strtolower(CONTROLLER_NAME)!='pay' && strtolower(ACTION_NAME)!='qrcode'){
if(empty($peizhi['apijump'])) $peizhi['apijump']='https://www.woailunwen.com';
header('location:'.$peizhi['apijump']);
exit();
}
}
}

if($peizhi['closeweb']==1){
exit(''); //此处填写网站关闭后的提示信息!
}
//检测用户登录
if(CONTROLLER_NAME=='Home'){
$checklogin=SL('User')->checklogin();
$nowAction = MODULE_NAME.'/'.CONTROLLER_NAME.'/'.ACTION_NAME;
if($checklogin[0]==0){
if(IS_AJAX){
$this->reback([0,'请登录。',U('/')]);
}else{
header('Location:'.U('/'));
}
exit();
}
if(empty($publicData['user'])){
$publicData['user']=$checklogin[1];
}

//认证未通过
if($peizhi['ifopenusercheck']==1 && $checklogin[1]['ifusercheck']!=2 && ('info'!=ACTION_NAME && 'loginout'!=ACTION_NAME && 'upload'!=ACTION_NAME)){
exit('<script>location.href="'.$publicData['peizhi']['httpstyle'].'://'.$_SERVER['HTTP_HOST'].U('Index/Home/info').'";</script>');
exit();
}
}

$this->assign('config',$peizhi);
$this->assign('sitename',$peizhi['sitename']);
$this->assign('user',$checklogin[1]);
}
}

PHP处理模板 cookie优先 检测用户登录的更多相关文章

  1. Session和Cookie,以及用户登录验证问题。

    参考 :https://blog.csdn.net/u010002184/article/details/79416199 https://www.bbsmax.com/A/RnJW72YJqY/ 首 ...

  2. .NET跨平台之旅:ASP.NET Core从传统ASP.NET的Cookie中读取用户登录信息

    在解决了asp.net core中访问memcached缓存的问题后,我们开始大踏步地向.net core进军——将更多站点向asp.net core迁移,在迁移涉及获取用户登录信息的站点时,我们遇到 ...

  3. 如何利用cookie来保存用户登录账号

    众所周知,cookie在网页编写中不接或缺,今天就谈谈如何利用cookie技术来保存用户登录账号 1.首先是否保存用户登录账号当然是用户自行决定,所以我们需要在用户登录界面设置一个复选框,以此取得用户 ...

  4. 用redis和cookie做单用户登录

    因为公司的项目需要用到单用户登录,于是今天用redis和cookie给系统添加了单用户登录功能,再次简单记录一下. 单用户登录是为了防止同一账户在不同电脑和不同浏览器里面同时登录.所以我这边的思路是: ...

  5. 细讲前端设置cookie, 储存用户登录信息

    细讲前端设置cookie 引言 正文 一.设置cookie 二.查看cookie 三.删除cookie 四.封装cookie操作 结束语 引言 我们都知道如果想做一个用户登录并使浏览器保存其登录信息, ...

  6. 【wpf WebBrowser 清空网站的Cookie&Session 清空用户登录状态】

    最近做项目遇到了一个说小不小,说大不大的问题,那就是在WebBrowser中清空网站上用户的登陆状态, 一开始心想,那不就清空cookies就行啦,那么简单的事情,百度一下 …… …… 是的,正如你们 ...

  7. PHP注册与登录【3】 用户登录与退出

    登录页面 login.html 负责收集用户填写的登录信息. <fieldset> <legend>用户登录</legend> <form name=&quo ...

  8. PHP 用户登录与退出

    PHP 用户登录与退出 登录页面 login.html 负责收集用户填写的登录信息. <fieldset> <legend>用户登录</legend> <fo ...

  9. discuz判断用户登录

        在include/common.inc.php 文件.程序开始先判断是否有cookie存到了sid值,然后解密cookie['auth']这个用户登录状态加密字符串,如果解密出来有uid值表示 ...

  10. PHP不同域名cookie共享(单点登录实现原理)

    PHP使用P3P完成COOKIE跨域操作实际实用中,类似的需求有,比如说我们有两个域名,我们想实现在一个域名登录后,能自动完成另一个域名的登录,也就是单点登录(SSO)功能.为了测试的方便,先编辑ho ...

随机推荐

  1. Vue启用报错 RangeError: Invalid typed array length: -4095

    近期开发的前端项目项目启用失败,记录下修复过程 RangeError: Invalid typed array length: -4095 错误原因:node版本问题,安装10.x.x 即可 重新安装 ...

  2. linux防火墙开放1521端口

    问题描述:使用plsql连接数据库发现TNS报错,登录服务器发现防火墙开放,如果直接关闭防火墙,所有的端口都可以连接,但是实际中可能会遇到开启防火墙的库,这时候需要开放单一端口对某一服务器或者某一网段 ...

  3. Linux中如何通过yum或者apt下载安装MySQL

    一.   yum mysql5.7以下 mysql5.7以上 Centos8 可以,但是需要重新配置文件 可以,但是需要重新配置文件 可以,但是需要重新配置文件 Centos7 可以直接yum,但是是 ...

  4. ADC采样时间、Chirp扫频时间、Chirp重复周期的区分

    图1 FMCW雷达信号参数 在德州仪器TI毫米波雷达中,开发板参数配置往往涉及如图1所示的信号参数. 宏观上看,信号参数包括\(ADC\)采样时间.脉冲重复周期(\(Chirp\)扫频周期)和帧时间( ...

  5. 一款能“干掉” ChatGPT 的应用「GitHub 热点速览」

    据说有了它,ChatGPT 就可以靠边站了.因为 Auto-GPT 能更加主动地完成你给他的指定任务,不用做更多的人为干涉,它的推理能力比 ChatGPT 更强,有人用它解放双手做了个 React 网 ...

  6. 【LeetCode动态规划#10】完全背包问题实战,其三(单词拆分,涉及集合处理字符串)

    单词拆分 力扣题目链接(opens new window) 给定一个非空字符串 s 和一个包含非空单词的列表 wordDict,判定 s 是否可以被空格拆分为一个或多个在字典中出现的单词. 说明: 拆 ...

  7. vue移动端预览 pdf 文件

    pdf预览,在项目中是很常见的需求,在PC端web项目中,我们可以使用window.open(url)直接打开pdf进行预览,那么移动端虽然我们也可以使用此方法,但是这是新开了一个webview页面, ...

  8. Selenium 元素定位方式封装的实际应用

    一.定位方式  二.实际应用 1.项目结构 2.locator_base.py 文件 # -*- coding: utf-8 -*- from selenium.webdriver.common.by ...

  9. Java 网络编程 —— Socket 详解

    构造 Socket 在[客户端/服务端]的通信模式中,客户端需要主动构造与服务器连接的 Socket,构造方法有以下几种重载形式: Socket() Socket(InetAddress addres ...

  10. 2020-10-27:go中select的执行流程是什么?

    福哥答案2020-10-27: ***[2020-10-27:go中select的执行流程是什么?](https://bbs.csdn.net/topics/398044569)