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如何实现页面跳转?例如:登陆页面属于用户名和密码后,点击登陆,验证用户名和密码,正确后,跳转到其他页面.能否给个例子. 下面列了五个例子来详细说明,这几个例子的主要功 ...
随机推荐
- HDU 3015 Disharmony Trees
题解:在路边有一行树,给出它们的坐标和高度,先按X坐标排序.记录排名,记为rankx,再按它们的高度排序,记录排名,记为rankh.两颗树i,j的差异度为 fabs(rankx[i]-rankx[j] ...
- java学习之坦克大战游戏
总结:由于这几天快过年比较忙然后没怎么写,写代码途中一些经验总结现在给忘记了.这次的小项目感觉比上次写的思路清楚了点.没有之前第一次写那么逻辑混乱,结构也搞的比之前的要好,添加功能比较容易.学习了之前 ...
- Django的TemplateResponse
def my_render_callback(response): return response from django.template.response import TemplateRespo ...
- Qt编写文件一键命名软件
之所以会写这篇博文,主要是由于近期从网上下载了一堆图片,但图片名称非常没有规律,处理起来非常不方便,由此想到是不是有一键命名的软件能够帮助我对全部图片命名,是图片名称有规律,这样在处理时方便操作. 有 ...
- sql日期转换格式
Select CONVERT(varchar(100), GETDATE(), 0): 05 16 2006 10:57AM Select CONVERT(varchar(100), GETDATE( ...
- use MSBuild cmd to build and deploy the database project.
You can use the below command to implement it. SET TargetDBName="Database name" SET DataBa ...
- 重启IIS报错:IIS 服务或万维网发布服务,或者依赖这 服务可能在启动期间发生错误或者已禁用
参考文章: http://www.cnblogs.com/zengen/archive/2010/10/29/1864569.html 开启如下服务: Net.Msmq Listener Adapte ...
- linux cmd: netstat
每天一个linux命令:netstat http://www.cnblogs.com/peida/archive/2013/03/08/2949194.html netstat命令用于显示与IP.T ...
- 一种解决h5页面背景音乐不能自动播放的方案
场景:微信.浏览器.App 普通解决方案:采用audio标签的autoplay属性 现象: 大部分IOS系统和少部分Android微信不支持自动播放 $解决方案:监听WeixinJSBridgeRea ...
- 入门前端之HTML
本文内容: HTML概念 HTML元素 HTML属性 HTML标题 HTML段落 HTML格式化 HTML样式 HTML 链接 HTML 图像 HTML 表格 HTML 列表 HTML 块 HTML ...