## 页面跳转
在应用开发中,经常会遇到一些带有提示信息的跳转页面,例如操作成功或者操作错误页面,并且自动跳转到另外一个目标页面。插件内置了两个跳转方法`success`和`error`,用于页面提示。
使用方法很简单,举例如下:
~~~
<?php
// +----------------------------------------------------------------------
// | onegow [ WE CAN DO IT MORE SIMPLE]
// +----------------------------------------------------------------------
// | Copyright (c) 2016-2018 http://onegow.com All rights reserved.
// +----------------------------------------------------------------------
// | Licensed ( http://www.apache.org/licenses/LICENSE-2.0 )
// +----------------------------------------------------------------------
// | Author: mrye 55585190@qq.com
// +----------------------------------------------------------------------
namespace inc\mobile;
class Index extends Base
{
public function index()
{
$data = [];
if (Db::name('user')->insert($data)) {
//设置成功后跳转页面的地址,默认按钮没有跳转功能
$this->success('新增成功', 'User/list');
} else {
//错误页面的默认跳转页面是返回前一页,通常不需要设置
$this->error('新增失败','User/error');
}
}
}
~~~
在`ajax`的情况下会调用插件内部中的`echo_json`方法,并且截断。
## 获取表单参数
在获取用户提交的表单时可以使用`input`函数,用法和tp类似:
~~~
/**
* 为了避免恶意攻击或者恶意提交参数
* 使用 input 或者$this->input 时可指定参数过滤,默认过滤xss,在提交html或脚本时需注意切换,否则将获取不到参数
* 可选列表:xss、sql、int、integer、float、string、boolean
*
*/
$value = $this->input('where','','sql');
~~~
在获取头部表单时可以使用`header`函数,用法和tp类似:
~~~
$header = $this->header('name');
~~~
判断客户端请求方式时可以使用`isAjax`函数,用法和tp类似:
~~~
if($this->isAjax()) {
echo '是ajax请求';
}
if($this->isPost()) {
echo '是post请求';
}
if($this->isGet()) {
echo '是get请求';
}
~~~
## session和cookie
插件内部提供了函数session用来设置和获取session,例如:
~~~
// 赋值(当前作用域)
$this->session('name', 'mrye');
// 赋值并设置过期时间(当前作用域)
$this->session('name', 'mrye', 86400);
// 删除(当前作用域)
$this->session('name', null);
~~~
插件内部提供了函数cookie用来设置和获取cookie,例如:
~~~
// 赋值(当前作用域)
$this->cookie('name', 'mrye');
// 赋值并设置过期时间(当前作用域)
$this->cookie('name', 'mrye', 86400);
// 删除(当前作用域)
$this->cookie('name', null);
~~~
## 其它方法说明
获取客户端真实ip是可使用:
~~~
$clientIp = $this->ip();
~~~
判断客户端是否是移动端是可使用:
~~~
if($this->isMobile()) {
echo '是移动端';
}
~~~
客户端使用接口形式访问时,调用`echoJson`输出json数据
~~~
$this->echoJson('操作成功',1);
~~~