php判断postget
Ⅰ thinkphp怎么判断post提交是否为空
thinkphp判断post提交是否为空的方法如下:
1、HTML中form代码:
<div class="login">
<form method="post" action="{:U('login')}">
<p><img src="{:U('verify')}"></p>
<div class="clear"></div>
<p>验证码:<input type="tel" name="verify" class="code"></p>
<p><input type="submit" class="sub" value="提交"></p>
</form>
</div>
2、控制器部分代码:
* 登陆处理类
*/
public function login(){
if (!IS_POST) {
$this->error('页面不存在');
}
$Verify = new \Think\Verify(); //这里开始校验参数是否为空
$code =I('post.verify');
if(!$Verify->check($code)){
$this->error('验证码错误');
}
redirect($_SERVER['HTTP_REFERER']);
}
验证码校验函数:
function check_code($code, $id = ""){
$verify = new \Think\Verify();
return $verify->check($code, $id);
}
校验规则:如果返回false就证明校验失败。
Ⅱ [php]$action=trim(isset($_POST['action'])$_POST['action']:$_GET['action']);是什么意思
trim是用来检去掉首尾空格的,在这个地方,一点用的没有,是错误用法。
好了,我来解释下
$action= 给变量$action赋值
isset($_POST['action']) 检查$_POST['action']是否存在,存在返回true,不存在返回false
$_POST['action'] 获得POST传值
$_GET['action'] 获得GET传值
?: 的用法如下:
设$a?$b:$c,即是说,$a如果为true则返回$b,如果为false则返回$c。
逻辑是:$a是否成立?成立就返回":"前的变量,不成立就返回":"后的。
所以,该句的意思是:
判断action的POST传值是否存在,存在就返回该值赋给$action,不存在就返回action的GET传值赋给$action。
下面是题外话:
POST和GET传值是网页传值的两种方法
你可以使用表单来实现页面间的这种传值
<form action="index.html" method="POST">
<input type=text name="action" />
<input type=submit />
</form>
把method中的POST改为GET就是GET传值了。该值回被传给action中的index.html
GET传值还有其他简单的方法,譬如:
<a href="index.html?action=1&name=2">跳转到index.html并且$_GET['action']=1,$_GET['name']=2 </a>
Ⅲ PHP中put和post区别
1.使用支持和范围的区别:
PHP提供了对PUT方法的支持,在Http定义的与服务器的交互方法中,PUT是把消息本体中的消息发送到一个URL,形式上跟POST类似;
PHP 提供对诸如 Netscape Composer 和 W3C Amaya 等客户端使用的 HTTP PUT 方法的支持;
PHP 4 中,必须使用标准的输入流来读取一个 HTTP PUT 的内容;
PUT方法没有POST方法使用广泛,但PUT方法却是向服务器上传文件最有效率的方法:
2.上传过程的区别:
POST上传文件时,通常需要将所有的信息组合成multipart 传送过去,然后服务器再解码这些信息,解码过程则必不可少的会消耗内存和CPU资源,这种现象在上传大文件时尤其明显;
PUT方法则允许你通过与服务器建立的socket链接传递文件的内容,而不附带其他的信息,效果上更直接;
3.上传效果的区别:
PHP 接受到 PUT 方法的请求时,会把上传的文件储存到和其它用 POST 方法处理过的文件相同的临时目录;请求结束时,临时文件将被删除。
用来处理 PUT 的 PHP 脚本必须将该文件拷贝到其它的地方;
4. POST和PUT请求根本区别
POST请求的URI表示处理该封闭实体的资源,该资源可能是个数据接收过程、某种协议的网关、或者接收注解的独立实体;
PUT请求中的URI表示请求中封闭的实体-用户代理知道URI的目标;
服务器无法将请求应用到其他资源;
如果服务器希望该请求应用到另一个URI,就必须发送一个301响应;
用户代理可通过自己的判断来决定是否转发该请求;
Ⅳ PHP 怎么判断post或get的值是否为小数或者整数
在日常的php开发中,我们可能会碰到,需要判断Get或者Post的数值是否为整型或者是浮点型、是否含有小数
由于php是弱类型语言,很多初次做php开发的程序员对php的数据类型并不是很关注或者熟悉,但是在一些的常见业务实现中往往需要对数据类型进行判断!
分享一个前段时间在业务实现过程中遇到的问题!
比如这样的一个连接:www.davup.com/index.php?add=1000.1
以往正常的逻辑中会直接拿来get['add'] 进行
is_number()【判断是否为数值】
is_float()【是否为小数】
来进行判断。结果发现这样的处理方式是错位的 ! 因为 无论是Post的数据或者是Get的数据,在php中得到的 值得数据类型都是字符串!
所以,上面两个函数是不能正常使用的, 只能用字符串函数来处理! 最简单的方式就是使用strstr(get['add'],'.'); 【判断是否含有小数点,如果含有小数点,就返回真,没有就返回假】!