thinkphp 分组、页面跳转与ajax
本节课大纲:
一、多应用配置技巧
二、使用分组
三、页面跳转
$this->success('查询成功',U('User/test'));
$this->redirect('User/test','',5,'页面正在跳');
四、Ajax技巧 前后台公用公共配置文件: $ pwd
/cygdrive/c/wamp/www/thinkphp5/Admin/Conf Administrator@QCEE61NZ66FEX2D /cygdrive/c/wamp/www/thinkphp5/Admin/Conf
$ ls
config.php Administrator@QCEE61NZ66FEX2D /cygdrive/c/wamp/www/thinkphp5/Admin/Conf
$ cat config.php
<?php
$arr=include './config.php'; $arr2=array( );
return array_merge($arr,$arr2); ?> // 当前目录下的config.php,这个当前是指主入口的路径: $arr=include './config.php'; 公用配置文件:
$ pwd
/cygdrive/c/wamp/www/thinkphp5 Administrator@QCEE61NZ66FEX2D /cygdrive/c/wamp/www/thinkphp5
$ ls -ltr config.php
-rwxrwx---+ 1 Administrators None 393 五月 9 13:14 config.php Administrator@QCEE61NZ66FEX2D /cygdrive/c/wamp/www/thinkphp5
$ cat config.php
<?php
return array(
//'配置项'=>'配置值'
'TMPL_L_DELIM'=>'<{', //配置左定界符
'TMPL_R_DELIM'=>'}>', //配置右定界符
'DB_PREFIX'=>'', //设置表前缀
'DB_DSN'=>'mysql://root:1234567@192.168.32.79:3306/devops', //DSN方式配置数据库信息
'SHOW_PAGE_TRACE'=>true,//开启页面Trace
/* 'URL_ROUTER_ON'=>true,
'URL_ROUTE_RULES'=>array(
':id/:num'=>'Index/index',
), */
);
?>
Administrator@QCEE61NZ66FEX2D /cygdrive/c/wamp/www/thinkphp5 thinkphp 分组机制: <?php
//1.确定应用名称 Home define('APP_NAME','App'); //2. 确定应用路径 ./Home 当前目录 index.php的当前目录 前台文件夹 define('APP_PATH','./App/');
//开启调试模式 define('APP_DEBUG',true);
//4.引入核心文件 include 引入的东西错误 代码继续运行 require 出错立即结束 require './ThinkPHP/ThinkPHP.php'; ?> 'APP_GROUP_LIST' => 'Home,Admin', //项目分组设定
'DEFAULT_GROUP' => 'Home', //默认分组 在同一个应用下,再分不同的应用: $ pwd
/cygdrive/c/wamp/www/thinkphp6/App/Lib/Action Administrator@QCEE61NZ66FEX2D /cygdrive/c/wamp/www/thinkphp6/App/Lib/Action
$ ls
Admin Home IndexAction.class.php 整个应用叫app应用: <?php
//1.确定应用名称 Home define('APP_NAME','App'); //2. 确定应用路径 ./Home 当前目录 index.php的当前目录 前台文件夹 define('APP_PATH','./App/');
//开启调试模式 define('APP_DEBUG',true);
//4.引入核心文件 include 引入的东西错误 代码继续运行 require 出错立即结束 require './ThinkPHP/ThinkPHP.php'; ?> 推荐使用分应用的方式,而不是分组 分应用情况下的访问方式,多应用配置技巧: $ pwd
/cygdrive/c/wamp/www/thinkphp5 Administrator@QCEE61NZ66FEX2D /cygdrive/c/wamp/www/thinkphp5
$ ls
Admin admin.php config.php Home index.php ThinkPHP Home前台应用文件夹: Admin后台应用文件夹: http://localhost/thinkphp5/admin.php http://localhost/thinkphp5/index.php //页面跳转: <?php
// 本类由系统自动生成,仅供测试用途
class IndexAction extends Action {
public function index(){
echo "come in Home!";
$user=M('user');
$arr=$user->select();
dump($arr);
//分配给前台,表示为list
$this->assign('list','$arr');
$this->display();
}
} 前端页面:
<!doctype html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="Generator" content="EditPlus®">
<meta name="Author" content="">
<meta name="Keywords" content="">
<meta name="Description" content="">
<title>Document</title>
</head>
<body> <table border='1' width='500'>
<foreach name='list' item='vo'> <tr><td><{$vo.username}></td></tr> </foreach> </table>
</body>
</html> //超链接: <!doctype html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="Generator" content="EditPlus®">
<meta name="Author" content="">
<meta name="Keywords" content="">
<meta name="Description" content="">
<title>Document</title>
</head>
<body> <table border='1' width='500'>
<foreach name='list' item='vo'> <tr><td><a href="__URL__/info?id=<{$vo.id}>"><{$vo.username}></a></td></tr> </foreach> </table>
</body>
</html> <?php
// 本类由系统自动生成,仅供测试用途
class IndexAction extends Action {
public function index(){
echo "come in Home!";
$user=M('user');
$arr=$user->select();
dump($arr);
//分配给前台,表示为list
$this->assign('list',$arr);
$this->display();
} public function info(){
$id=$_GET['id'];
$user=M('user');
$arr=$user->find($id);
dump($arr);
if ($arr){
$this->success('index');
}
else {
//失败后自动跳转到上一页
$this->error('查询失败');
}
$this->assign('list',$arr);
$this->display();
}
} //redirect 跳转: <?php
// 本类由系统自动生成,仅供测试用途
class IndexAction extends Action {
public function index(){
echo "come in Home!";
$user=M('user');
$arr=$user->select();
dump($arr);
//分配给前台,表示为list
$this->assign('list',$arr);
$this->display();
} public function info(){
$id=$_GET['id'];
$user=M('user');
$arr=$user->find(100);
dump($arr);
if ($arr){
$this->success('index');
}
else {
//失败后自动跳转到上一页
$this->redirect('User/index');
}
$this->assign('list',$arr);
$this->display();
}
} 跳转到:
http://localhost/thinkphp5/index.php/User/index User/index 页面 Ajax 技巧: 在框架里面,脚本都是被方法所取代 <!doctype html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="Generator" content="EditPlus®">
<meta name="Author" content="">
<meta name="Keywords" content="">
<meta name="Description" content="">
<title>Document</title>
<script src="__PUBLIC__/Js/jquery.js"></script>
<script>
$(function(){
$('button').bind('click',function(){ $.get('__URL__/getAjax',function(jdata){
<!--alert (JSON.stringify(data));-->
if (jdata.status==1){
alert(jdata.data);
}
});
}); }); </script>
</head>
<body>
<div style='height:50px;background:yellow' id='did'></div>
<button>点击</button>
<script>
document.write(new Date());
</script>
</body>
</html> <?php
class IndexAction extends Action { public function index(){
$this->display();
} public function getAjax(){
//echo 'aaaaaaa';
$this->ajaxReturn('这里是数据','信息1',1);
} }
thinkphp 分组、页面跳转与ajax的更多相关文章
- ThinkPHP页面跳转、Ajax技巧详细介绍(十八)
原文:ThinkPHP页面跳转.Ajax技巧详细介绍(十八) ThinkPHP页面跳转.Ajax技巧详细介绍 一.页面跳转 $this->success('查询成功',U('User/test' ...
- 【转】ThinkPHP 页面跳转
ThinkPHP 提供了success 与error 方法用于带提示信息的页面跳转,如添加数据后显示提示信息并跳转等.success 方法用于操作成功后的提示,error 用于操作失败后的提示,二者使 ...
- ThinkPHP 分组,应用,跳转
一.多应用配置技巧 在主入口文件index.php同级目录,新建一个 config.php 写入公共的配置项,然后在前后台各自的配置文件config.php中 $arr = include ...
- Ajax发送POST请求SpringMVC页面跳转失败
问题描述:因为使用的是SpringMVC框架,所以想使用ModelAndView进行页面跳转.思路是发送POST请求,然后controller层中直接返回相应ModelAndView,但是这种方法不可 ...
- 通过配置http拦截器,来进行ajax请求验证用户登录的页面跳转
在.NET中验证用户是否登录或者是否过期,若需要登录时则将请求转向至登录页面. 这个流程在进行页面请求时是没问题的,能正确进行页面跳转. 然而在使用xmlhttprequest时,或者jq的getJs ...
- 爱上MVC~ajax调用分部视图session超时页面跳转问题
回到目录 这个问题出现了很多年了,都没有解决,问题是这样的,有一个需要授权才可以访问的分部视图,在一个view中使用ajax的方法去调用它,然后更新页面的局部DIV,这时,如果你长时间不操作,sess ...
- js页面用定时任务通过AJAX获取后台数据,但是从这个页面跳转到其他页面后,定时任务仍然在定时请求后台
setInterval(function(){//ajax 请求后台数据},1000);这个是A页面的定时器然后我在A页面通过其他请求跳转到其他页面之后后台发现A页面的定时器的那个请求仍然在执行为什么 ...
- ajax 提交成功页面跳转问题
jsx/ajax提交成功后采用以下方式跳转:1.本页面跳转:"window.location.href"."location.href" 2.上一层页面跳转:& ...
- ajax 如何实现页面跳转
老师,您好.jquery的ajax如何实现页面跳转?例如:登陆页面属于用户名和密码后,点击登陆,验证用户名和密码,正确后,跳转到其他页面.能否给个例子. 下面列了五个例子来详细说明,这几个例子的主要功 ...
随机推荐
- C#)Windows Shell 编程系列5 - 获取图标
原文 C#)Windows Shell 编程系列5 - 获取图标 (本系列文章由柠檬的(lc_mtt)原创,转载请注明出处,谢谢-) 接上一节:(C#)Windows Shell 编程系列4 - 上下 ...
- 宣布正式发布 Windows Azure 多重身份验证
身份和访问管理是安全之锚,是企业 IT 部门的首要任务.它是随时随地向员工.合作伙伴和客户提供访问的关键所在.今天,我们非常高兴地宣布正式发布 Windows Azure 多重身份验证,从而为 IT ...
- HDU 1089 A+B for Input-Output Practice (I)
#include <cstdio> int main() { int a,b; while(scanf("%d%d",&a,&b)!=EOF) prin ...
- java 值传递和引用传递。
java中 基本类型的参数传递是值传递,即前后两个方法的变量不相干,被调方法参数值改变不影响调用方法的传参数值. 引用数据类型的参数传递是 传递的是参数的地址.即被调方法修改参数值会,调用方法里会跟着 ...
- 编译最新ffmpeg2.0.1到iOS设备
www.mingjianhua.com 转载请注明出处. 上一篇文章讲了用NDKr9编译最新ffmpeg2.0.1到android平台,一般做了Android平台的编解码就免不了要做iOS,这次一起把 ...
- Enze Third day(c#中选择结构【if...else】)
哈喽,又到了我总结课堂知识的时间了.今天在云和学院学的是C#中的“选择结构”下的If语句.下面就来总结一下今天所学的吧. 理论:If语句是最常用的选择结构语句.它主要根据所给定的条件(常由关系表达式和 ...
- D - 1sting(相当于斐波那契数列,用大数写)
Description You will be given a string which only contains ‘1’; You can merge two adjacent ‘1’ to be ...
- linux shell: 搜索字符串,剔除包含特定字符的行
搜索代码中出现CONFIG_BOOTARGS的行,但又不希望有#define和#undef, 暂时不知带如何直接用一个语句做到,因此用了如下三个语句. find . -type f | xargs g ...
- JavaSE学习总结第03天_Java基础语法2
03.01 数据类型中补充的几个小问题 1:在定义Long或者Float类型变量的时候,要加L或者f. 整数默认是int类型,浮点数默认是double. byte,short在定义的时候, ...
- 数据层使用DBHelper.dll来减少工作量
目前在需求确定了以后进行开发的步骤一般是这样的:建立数据表,建立model,构建数据操作层,最后在页面中进行调用.关于数据操作层,因为大量的操作都集中在增加.更新.删除等简易操作,而我之前的写法是每次 ...