ThinkPHP - F函数,更新配置文件
Html代码:
<!DOCTYPE html>
<html lang="zh-cn">
<head>
<meta charset="utf-8" />
<title>修改验证码配置文件</title>
<link rel="stylesheet" href="__PUBLIC__/Css/Public.css">
</head>
<body>
<form action="<{:U(GROUP_NAME . '/System/setVerify')}>" method="post">
<table class="table">
<tr>
<th colspan="2">验证码配置</th>
</tr>
<tr>
<td align="right">验证码字典:</td>
<td><input type="text" name="charset" value="<{$Think.config.charset}>" /></td>
</tr>
<tr>
<td align="right">验证码长度:</td>
<td><input type="text" name="codelen" value="<{$Think.config.codelen}>" /></td>
</tr>
<tr>
<td align="right">验证码宽度:</td>
<td><input type="text" name="width" value="<{$Think.config.width}>" /></td>
</tr>
<tr>
<td align="right">验证码高度:</td>
<td><input type="text" name="height" value="<{$Think.config.height}>" /></td>
</tr>
<tr>
<td align="right">验证码字体文件位置:</td>
<td><input type="text" name="font" value="<{$Think.config.font}>" /></td>
</tr>
<tr>
<td align="right">验证码字体大小:</td>
<td><input type="text" name="fontsize" value="<{$Think.config.fontsize}>" /></td>
</tr>
<tr>
<td align="right">Session名称</td>
<td><input type="text" name="verifyName" value="<{$Think.config.verifyName}>" /></td>
</tr>
<tr>
<td colspan="2" align="center">
<input type="submit" value="保存更新" style="cursor:pointer;" />
</td>
</tr>
</table>
</form>
</body>
</htm
PHP代码:
/**
* 验证码表单
*/
Public function setVerify() {
if ( !IS_POST ) $this->redirect(GROUP_NAME . '/Syatem/verify'); //使用F函数,重写配置文件
if ( F('verify', $_POST, CONF_PATH) ) {
$this->success('写入成功!', U( GROUP_NAME . '/System/verify'));
} else {
$this->error('写入失败, 请检查文件夹:' . CONF_PATH . '是否具有写入权限!');
}
}
生成文件:
<?php return array ( 'charset' => 'abcdefghkmnprstuvwxyzABCDEFGHKMNPRSTUVWXYZ23456789', 'codelen' => '2', 'width' => '130', 'height' => '50', 'font' => './App/Data/QDB.otf', 'fontsize' => '30', 'verifyName' => 'verify', );?>
ThinkPHP - F函数,更新配置文件的更多相关文章
- thinkPHP(待更新)
一些函数 1. set_include_path().get_include_path() .PATH_SEPARATOR 设置php加载的路径 2. register_shutdown_func ...
- python(60):configparser 函数,配置文件
ConfigParser模块学习 介绍 ConfigParser模块在python中是用来读取配置文件,配置文件的格式跟windows下的ini配置文件相似,可以包含一个或多个节(section),每 ...
- 在Django中使用F()函数
F()允许Django在未实际链接数据的情况下具有对数据库字段的值的引用.通常情况下我们在更新数据时需要先从数据库里将原数据取出后方在内存里,然后编辑某些属性,最后提交.例如这样 # Tintin f ...
- ThinPHP第二十八天(F函数和file_put_contents区别|PHP生成PHP文件,Kindeditor编辑器使用方法)
1.F(name,data,path)函数和file_put_contents(file,str)区别 F函数直接生成<?php ?>格式的php文件了,将data加入到<?php和 ...
- ThinkPHP第七天(F函数使用,项目分组配置,项目分组模板文件放置规则配置)
1.F(文件名称,写入数据,写入地址),用于将数据写入至磁盘文件中,如F('Data',$arr,'./Data/'),作用是将$arr写入至网站根目录的Data文件夹中的Data.php中. 2.读 ...
- thinkPHP 全局函数
M函数 TP的Model父类,封装的功能比较多,增删改查操作都具备.一些表,比如留言表,comment class CommentModel extends Model { } M('comment' ...
- thinkphp助手函数
tp3 C($name=null, $value=null,$default=null) 获取和设置配置参数 支持批量定义 load_config($file,$parse=CONF_PARSE) 加 ...
- Thinkphp getLastSql函数用法
如何判断一个更新操作是否成功: $Model = D('Blog'); $data['id'] = 10; $data['name'] = 'update name'; $result = $Mode ...
- prototype.js $F()函数介绍
$F()是一个能够简化编码量的函数, 对于字段输入控件有效,包括input.textarea.select等,该函数的输入参数为这些输入控件元素对象的id或元素对象本身,函数负责返回 这些输入控件元素 ...
随机推荐
- C++中头文件(.h)和源文件(.cpp)都应该写些什么
头文件(.h): 写类的声明(包括类里面的成员和方法的声明).函数原型.#define常数等,但一般来说不写出具体的实现. 在写头文件时需要注意,在开头和结尾处必须按照如下样式加上预编译语句(如下): ...
- HTTP协议(超文本传输协议)
一.HTTP的简介: 超文本传输协议. 它是基于TCP连接的(默认端口号是80).所以在传输数据前客户端需向服务器发送连接请求.当服务器同意连接请求,建立连接后才可以发送数据报文. 二.HTTP的报文 ...
- js面向对象的三大特性
0x00:使用OOP技术,常常要使用许多的代码模块,每个模块都提供特定的功能,每个模块老师孤立的,甚至与其它的模块完全独立,这种模块化的编程方法大大的提供了代码实现的多样性,大大增加了代码的重用性.j ...
- python第一步
安装2.7的python 环境:到cmd下python,就可以跑代码了,要是想运行py文件,在命令行python test.py,记得在windows下把python加入环境变量 学习基础的语法: 注 ...
- IOS 学习笔记(2) 视图UINavigationController
1.栈 导航控制器自身有一个针对显示内容的栈,也有一个对于导航栏的栈,当有新的内容欲显示时,进的导航栏和显示内容会被压入此栈,这样原本显示中的导航栏和显示内容则会进入到栈的更深一层中,根据栈的先进后出 ...
- xfire发布的Webservice中Spring注入为空的解决方案
Spring框架使用中注入为空是一个比较头疼的问题,遇到Webservice和Spring框架配合时,这个问题更容易出现并很难发现问题的原因. 在做SSO系统中就遇到这样的问题,在Service的实现 ...
- 命令查询分离原则Command-query separation principle
在UML和模式应用一书中,发送给Die的roll消息之后跟随着第二个消息getFaceValue用于提取其新的faceValue,特别是:roll()方法是void的,没有返回值,例如: public ...
- JAVA GUI学习 - JOptionPane对话框组件学习
/** * 对话框 - 学习笔记 * @author Wfei * */ public class JoptionPaneKnow extends JFrame { public JoptionPan ...
- C语言数据结构----双向链表
概括:主要说明双向链表的基本概念和具体操作以及源代码. 一.基本概念 1.有了单链表以后我们可以把内存中小块的空间联系在一起,并且把每一个小块都存储上我们想要存储的数值.但是单链表只有一个next,我 ...
- 网络收发之cycleBuf
#pragma once #include <iostream> #include <string> class cyclebuffer { protected: volati ...