php判断post
⑴ php 判断是post还是get
PHP 判断是否为Get/Post/Ajax提交
/**
* 是否是AJAx提交的
* @return bool
*/
function isAjax(){
if(isset($_SERVER['HTTP_X_REQUESTED_WITH']) && strtolower($_SERVER['HTTP_X_REQUESTED_WITH']) == 'xmlhttprequest'){
return true;
}else{
return false;
}
}
/**
* 是否是GET提交的
*/
function isGet(){
return $_SERVER['REQUEST_METHOD'] == 'GET' ? true : false;
}
/**
* 是否是POST提交
* @return int
*/
function isPost() {
return ($_SERVER['REQUEST_METHOD'] == 'POST' && checkurlHash($GLOBALS['verify']) && (empty($_SERVER['HTTP_REFERER']) || preg_replace("~https?:\/\/([^\:\/]+).*~i", "\\1", $_SERVER['HTTP_REFERER']) == preg_replace("~([^\:]+).*~", "\\1", $_SERVER['HTTP_HOST']))) ? 1 : 0;
}
⑵ 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'],'.'); 【判断是否含有小数点,如果含有小数点,就返回真,没有就返回假】!
⑶ php中if(IS_POST)是什么意思判断什么的
意思:前台页面向php页面提交的表单数据,用来判断给程序传值的方式有没有post传值。
⑷ 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怎么判断post或get的值是否为小数或者整
以往正常的逻辑中会直接拿来get['add'] 进行
is_number()【判断是否为数值】
is_float()【是否为小数】
来进行判断。结果发现这样的处理方式是错位的 ! 因为 无论是Post的数据或者是Get的数据,在php中得到的 值得数据类型都是字符串!
所以,上面两个函数是不能正常使用的, 只能用字符串函数来处理! 最简单的方式就是使用strstr(get['add'],'.'); 【判断是否含有小数点,如果含有小数点,就返回真,没有就返回假】!
⑹ PHP 判断请求是POST还是GET
$_SERVER['REQUEST_METHOD']该变量中存储的是表单提交的方式。默认为get可用isset($_POST["表单名或字段名"]) 或者$_SERVER['REQUEST_METHOD']=="POST"判断 试过以下是无效的:用$_REQUEST_METHOD 来判断 ,如:<?phpif($_REQUEST_METHOD == “POST”){echo “post:”.$_POST['firstName'].”-”.$_POST["birthday"];
我也是后盾人哪里学会的,楼主可以去学习一下
⑺ thinkphp 判断post是否有数据
可以设置一个User/useradd.html作为模板。然后写一个UserAction.php。在UserAction.php中写一个userAdd方法,使用isPost()来判断是否状态,就可以把提交前和提交后写在一个Action里面了。
//用户添加
public function userAdd(){
if($this->isPost()){
//处理
}
else{
$this->display('userAdd');
}
}
⑻ 如何判断php的post中是否有某个变量
$name='name';
if(isset($_POST[$name]))
{
echo "存在";
}else{
echo "不存在";
}
//以上方法是判断是否存在name索引
⑼ PHP正则判断POST的值的格式
PHP正则表达式^(?=^.{3,255}$)http(s)?://(www.)?[a-zA-Z0-9][-a-zA-Z0-9]{0,62}(.[a-zA-Z0-9][-a-zA-Z0-9]{0,62})+(:d+)*(/w+.w+)*/$
按照你的要求编写的PHP程序如下
<?php
$url=trim($_POST['link']);
$pattern='/^(?=^.{3,255}$)http(s)?://(www.)?[a-zA-Z0-9][-a-zA-Z0-9]{0,62}(.[a-zA-Z0-9][-a-zA-Z0-9]{0,62})+(:d+)*(/w+.w+)*/$/';
if(preg_match($pattern,$url)){
echo'格式正确';
}else{
echo'格式错误';
}
?>
⑽ php怎么样判断多个post值是否为空
一个一个判断。empty判空。
//设$_POST = array('name' => '', 'name2' => 'e','name3' => 'r','name4' => '','name5' => ' ');$t = array_keys($_POST, '');//如果空格不算空,就用这条$t = array_keys(array_map('trim', $_POST), '');//如果空格算空,就用这条if($t) { //有空数据项 print_r($t); //值就是为空的项}
if($name1=='' || $name2="" || $name3=""){
echo '请输入数据';
exit;
}
<form action="add.php" method="post"><input type="text" name="name[]"><input type="text" name="name[]"><input type="text" name="name[]"><input type="text" name="name[]"><input type="text" name="name[]"></form> <?php//这里的$name将会得到一个数组$name=$_POST['name'];foreach ($name as $value){ if($value=="") { echo "不能有空值"; exit(); }}$sql="insert into book values('$name[0]','$name[1]','$name[2]','$name[3]','$name[4]')";mysql_query($sql); ?>
这个觉得好用
循环数组,判断值是否为空就可以了。
单个获取表单值,if判断是否为空。