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判斷是否為空。