1.使用epp编辑php文件的时候出现:“JavaScript 验证器 错误”
解决方法:http://blog.sina.com.cn/s/blog_667ac0360102e8wg.html 但并不是按照那个网页所说的进行操作,而是把那个对钩勾上,后,然后就ok了。
2.html出现乱码:
解决方法: 在<head>后面加入:
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
3.定义action的时候应该在单独出现在一个文件内,一个文件不可以出现两个类。
4.action类中的_empty function可以接收未定义的操作。
5.在EmptyAction class中定义_empty() function可以实现404效果。
6.使用eclipse打开php文件中文乱码解决办法:
5.如何开启pagetrace
(1).在index.php中定义:define ('APP_DEBUG','true');
(2)在conf中的config。php中定义:'SHOW_PAGE_TRACE'=>true,//开启页面Trace即可
效果如下:
6:如何遍历数据库中取到的数据
在php文件中:
$m = new Model('tab');
$arr = $m->select();
$this->assign('data',$arr);
$this->display();
在html文件中:
<volist name ='data' id='vo'>
{$vo.ihd}----{$vo.name}</br>
</volist>
7.thinkphp中的增删改查
:二、ThinkPHP 3 读取数据 (重点)
对数据的读取 Read
$m=new Model('User');
$m=M('User');
select
$m->select();//获取所有数据,以数组形式返回
find
$m->find($id);//获取单条数据
getField(字段名)//获取一个具体的字段值
$arr=$m->where('id=2')->getField('username');
三、ThinkPHP 3 创建数据 (重点)
对数据的添加 Create
$m=new Model('User');
$m=M('User');
$m->字段名=值
$m->add();
返回值是新增的id号
四、ThinkPHP 3 删除数据 (重点)
$m=M('User');
$m->delete(2); //删除id为2的数据
$m->where('id=2')->delete(); //与上面效果相同,也是删除id为2的数据
返回值是受影响行数
五、ThinkPHP 3 更新数据 (重点)
$m=M('User');
$data['id']=1;
$data['username']='ztz2';
$m->save($data);
返回值是受影响行数
8.thinkphp中的主题是一个文件夹,设置方法如下:
一:在config。php中设置如下:
'DEFAULT_THEME' =>'default',//设置默认主题。
'DEFAULT_THEME'=>'your',//设置默认模板主题
'TMPL_DETECT_THEME'=>true,//自动侦测模板主题
'THEME_LIST'=>'your,my',//支持的模板主题列表
二:把相应的模版文件放置到default文件夹下。
三:使用的时候/t/your就使了your模版。
四:在代码中动态的调用不同的模版:
1$this->display();默认模版。
2$this->display('index2'); 调用默认文件夹下的index2.html模版。
3.$this->display('user:index3‘);调用user文件夹下的index3模版。
9.在模版中输出数据:
一:
1.普通输出:{$name};
2..数组输出
{$name[1]}
{$name['k2']}
{$name.k1}
3.对象输出
{$name:k}
{$name->k}
二、系统变量
{$Think.get.id}
三、使用函数
{$name|strtoupper} 生成的编译后文件是 <?php echo (strtoupper($name)); ?>
{$name|date='Y m d H:i:s',###}//#占位符
四、默认值
{$name|default='这里是默认值'}
五、运算符
+ - * / % ++ --
{$name++}
10.thinkphp中标签的使用:
二、分支结构
1、if
<if condition='$sex eq "男"'>
男人是泥巴做的
<else />
女人是水做的
</if>
<if condition='$age lt 18'>
未成年
<elseif condition='$age eq 18'/>
青春年少
<else />
成年
</if>
> gt
< lt
== eq
<= elt
>= egt
!= neq
=== heq
!== nheq
<switch name='number'>
<case value='1'>一个和尚挑水吃</case>
<case value='2'>两个和尚台水吃</case>
<case value='3'>三个和尚没水吃</case>
<default/> 这里是默认值
</switch>
三、循环结构
1.for
<table border='1' width='500'>
<for start='10' end='00' name='j' step='-2' comparison='gt'>
<tr><td>{$j}</td><td>abc</td></tr>
</for>
</table>
2.volist
<volist name='list' id='v'>
{$v.username}<br/>
</volist>
3.foreach
<foreach name='list' item='v' key='k'>
{$k}-------{$v}<br/>
</foreach>
四、特殊标签
1、比较标签
eq或者 equal 等于
neq 或者notequal 不等于
gt 大于
egt 大于等于
lt 小于
elt 小于等于
heq 恒等于
nheq 不恒等于
2.范围标签
in
<in name='n' value='9,10,11,12'>在这些数字里面<else/>不在这些数字的范围内</in>
<notin name='n' value='9,10,11,12'>在这些数字里面<else/>不在这些数字的范围内</in>
between
<notbetween name='n' value='1,10'>{$n}在1-10之间<else/>{$n}不在1到10之间</between>
3.present
标签来判断模板变量是否已经赋值,
<present name='m'>m有赋值<else/>m没有赋值</present>
4.Empty
empty标签判断模板变量是否为空,
<empty name='n'>n为空赋值<else/>n有值</empty>
5.Defined
判断常量是否已经定义
6.Define
在模板中定义常量
7.Assing
模板中变量赋值
五、其他标签使用
1、在模板中直接使用PHP代码
<php> echo "我是赵桐正" </php>
2、建议更改左右定界符
在配置文件中改变
'TMPL_L_DELIM'=>'<{', //修改左定界符
'TMPL_R_DELIM'=>'}>', //修改右定界符
11 php中潜入css,js代码
导入CSS和JS文件
1、css link
js scr
<link rel='stylesheet' type='text/css' href='__PUBLIC__/Css/test.css'/>
<script src='__PUBLIC__/Js/test.js'></script>
2.import
<import type='js' file='Js.test' /> //导入Public文件夹下面的Js目录中的test.js文件,import标签可以省略type属性,默认就是js的
<import type='css' file='Css.test' />
//可以更改默认文件夹 设置basepath属性
<import type='js' file='Js.my' basepath='./Other'/>
3.load
//方法可以自动检测导入的文件类型
<load href='__PUBLIC__/Js/test.js' />