导航:首页 > 编程语言 > php提交检测

php提交检测

发布时间:2022-11-26 16:40:01

php能否检测表单提交的是post还是get

超全局变量咯 if($_POST){echo 'post提交的呀'}else if($_GET){echo 'get提交的呀'}else{echo "你什么都没有提交啊"}
这里只判断了是否BOOL 没有提交的话就是FALSE 用ISSET函数也可以 当然要先提交以后 在接收的页面写才有用 而且貌似有一个变量还是函数来着能直接判断的。。忘记是什么了

㈡ 如何防止php恶意提交

表单提交时候增加验证码,可以有效防止灌水机提交数据。但是随着图形图像识别程序变的更加强大,验证码识别也不断的在提高他的难度,有些验证码甚至加入了声音的识别,一些小站点可以采用这样的方式。


另外对于一些内容发布,可以考虑使用其他一些审核的方式,比如邮件确认等,只有通过审核的信息才能够正确被显示。


尤其是一些开源程序,通常是采用一些简单的名称,例如:title,body等,这些表单很容易被构造,如果打乱表单的名称和顺序,则不会让灌水机那么轻易的提交数据,当然前提是你的程序中要对每个字段的数据进行处理。


对于一些恶意的内容信息禁用关键词,让他无法正常提交活着被评比,禁用ip在adsl时代实用性不大,但也算是一种办法,禁用帐号么也算是一种方法了,类似很多社区的禁言功能。


防止屏蔽的方法有许许多多,但是总是有办法被破解的,只要你是开放给别人提交的,总会遭到恶意的提交的,所以这个是无法完全杜绝的只能尽量避免。

㈢ php的表单提交的时候数据库中为什么还是有空数据的存在

您好,您检查一下在规则校验后是否阻断了数据库的提交,建议您使用数据库事务操作,这样确保数据正确

㈣ PHP如何检测按钮被按下

我仔细看了一下你的代码,你的问题不在于检测按钮是否被按下,因为SUBMIT按钮根本就无所谓检不检测,因为他是用于提交的,你提交了,当然就按了,没有提交,你的PHP文件怎么可能执行?连调都没调用,除了那种用GET方法从地址栏输入值的还差不多。当然还有种情况是把提交按钮隐藏起来,用一个显示的普通按钮代替,这种技术一般是在使用JS时采用的。意思就是说,你按了SUBMIT按钮就会提交值,这没有任何怀疑,你采用了POST方法,又没按SUBMIT按钮,那么,就不可能提交值。

对客户端的数据你这里省略了过滤这不是个好习惯。

$_POST[deptno]等等你可以先付给一个变量:$deptno=$_POST['deptno']
.这样也利用你检查,也规范些

总结我以上说的意思就是,不要去检查SUBMIT按钮是否按了,而是要检查数据,不如是否为空之类的,是否有特殊字符,是否有SQL注入等等。

㈤ php如何检测输入框里是否为空

比如说你的表单代码 (随手写的)
<form method="post" action="/check.php">
<input type="text" name="content" id="content" />
<input type="submit" value="提交" />
</form>

两种发发, 一种js前台判断,一种提交到服务器php来判断

js :
<form method="post" action="/check.php">
改成 (加了一个 onsubmit)
<form method="post" action="/check.php" onsubmit="return checkForm()">
然后写一个简单的js判断一下
<script type="text/javascript">
function checkForm(){
var tag = false;
var checkText = document.getElementById("content").value;
if ( checkText == "" || checkText == null ){
alert("未输入");
}else{
alert("已输入");
tag = true;
}
return tag;
}
</script>
这个js代码要放在表单所在的文件里, 或者你写成js文件导入也可以
比如说把头尾的<script>去掉,保存成checkform.js
然后<script type="text/javascript" src="/checkform.js">

服务端php:
form那行就不要改了.
直接在check.php里写
<?php
$checkText = $_POST['content'];
if ( empty( $checkText ) ){
echo '<script type="text/javascript">alert("未填写");historty.go(-1)</script>';
exit; //写exit是很必要的, 防止浏览器禁用JS, 如果有人说不用写你抽他.
}
//这里不用else了,能执行到这一行不用再判断
echo '<script type="text/javascript">alert("未填写");historty.go(-1)</script>';
?>

这就是最基本的两个方法, 当然如果js被禁用就要相别的方法了, 比如说用head跳转?
ajax判断表单?等等的. 很多
先掌握这两个吧

维度IDC解答

㈥ PHP表单提交做判断的问题

64行有误,语法错误:

if(form.yzbm.value.length != 6 && form.yzbm.value != ){

另外给你一个我自己做项目经常用的验证方法:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>My Check Form</title>
</head>
<script type="text/javascript">
//主函数
function CheckForm(oForm) {
var err_ele = null;
var ele = oForm.elements;
var haserror = false;
//遍历所有表元素
for(var i=0;i<ele.length;i++) {
//过滤元素类型
if(ele.type != 'submit' && ele.type != 'hidden' && ele.type != 'button') {
//是否需要验证标签
var required = ele[i].getAttribute('required');
if(required!="undefined" && (required==""||required=="true"||required=="yes") ) {
if(!validate(ele[i])) {
if(err_ele==null)
err_ele = ele[i];
haserror = true;
break;
}
}
}
}
//判断是否有没有通过验证的项目
if(haserror) {
err_ele.focus();
return false;
} else {
return true;
}
}

//得到表单元素的值
function getvalue(ele) {
var type = ele.getAttribute('type');
switch(type) {
case 'text':
case 'hidden':
case 'password':
case 'file':
case "select-one":
case 'textarea':
return ele.value;
}
}

//检测函数
function validate(ele) {
//得到设定的检测函数
var fun = ele.getAttribute('fun');
//自定义提示语句
var custommsg = ele.getAttribute('msg');

if(fun!=null) {
var checkarr = executeFunc(fun,ele);
if(checkarr[2] == 'regxp') { //正则表达式处理
if(!regValidate(getvalue(ele),checkarr[0])) {
//如果有自定义提示语句则使用自定义提示语句
if(custommsg) {
alert(custommsg);
} else {
alert(checkarr[1]);
}
return false;
}
} else if(checkarr[2] == 'custom') { //函数自行逻辑处理
//如果验证通过
if(!checkarr[0]) {
//如果有自定义提示语句则使用自定义提示语句
if(custommsg) {
alert(custommsg);
} else {
alert(checkarr[1]);
}
return false;
}
}
}
return true;
}

//运行函数
function executeFunc(name,element) {
//匹配函数是否带有参数
if(name.match(/^[\w]+\([\w,\'\"]+\);?$/)) {
return eval(name.replace(/^([\w]+)\(([\w,\'\"]+)\);?$/,'$1($2,element)'));
} else {
return eval(name.match(/^[\w]+\(\)$/) ? name : name + '(element)');
}
}

//
//判定某个值与表达式是否相符
function regValidate(value,sReg) {
//字符串->正则表达式,不区分大小写
var reg = new RegExp(sReg ,"i");
if(reg.test(value)) {
return true;
} else {
return false;
}
}

//////////////////////////////////验证规则定义///////////////////////////////

// 正则类验证
function UserName() {
var rt = new Array();
rt[0] = '^([a-zA-Z0-9]|[._]){4,19}$';
rt[1] = "用户名必须为4-19个字母和数字组成";
rt[2] = 'regxp';
return rt;
}

function PassWord() {
var rt = new Array();
rt[0] = '^([a-zA-Z0-9]|[._]){6,19}$';
rt[1] = "密码必须为6-19个字母和数字组成";
rt[2] = 'regxp';
return rt;
}

function notBlank(){
var rt = new Array();
rt[0] = "^\\S+$";
rt[1] = "该项不能为空,且不能含有空格!";
rt[2] = 'regxp';
return rt;
}

function required(){
var rt = new Array();
rt[0] = "^\\S";
rt[1] = "该项不能为空!";
rt[2] = 'regxp';
return rt;
}

//判断email
function isEmail() {
var rt = new Array();
rt[0] = "\\w+([-+.]\\w+)*@\\w+([-.]\\w+)*\\.\\w+([-.]\\w+)*";
rt[1] = "该项填写的EMAIL格式不正确!";
rt[2] = 'regxp';
return rt;
}

//只能输入中文
function onlyZh() {
var rt = new Array();
rt[0] = "^[\u0391-\uFFE5]+$";
rt[1] = "该项只能输入中文!";
rt[2] = 'regxp';
return rt;
}

//只可输入英文
function onlyEn() {
var rt = new Array();
rt[0] = "^[A-Za-z]+$";
rt[1] = "该项只能输入英文!";
rt[2] = 'regxp';
return rt;
}

function enOrNum() {
var rt = new Array();
rt[0] = "^[A-Za-z0-9]+$";
rt[1] = "该项只能输入英文和数字,且不能有空格!";
rt[2] = 'regxp';
return rt;
}

function isPhone() {
var rt = new Array();
rt[0] = "^((\\(\\d{2,3}\\))|(\\d{3}\\-))?(\\(0\\d{2,3}\\)|0\\d{2,3}-)?[1-9]\\d{6,7}(\\-\\d{1,4})?$";
rt[1] = "应输入正确的电话号码格式!";
rt[2] = 'regxp';
return rt;
}

// 自定义类验证函数
function isIdCard(ele) {
var rt = new Array();
rt[0] = false;
rt[1] = "应输入正确身份证号!";
rt[2] = 'custom';

var Reg_15 = /^(\d{6})()?(\d{2})(\d{2})(\d{2})(\d{2})(\w)$/;
var Reg_18 = /^(\d{6})()?(\d{4})(\d{2})(\d{2})(\d{3})(\w)$/;
var num = ele.value;
var len = num.length;

if (len == 15) {
if (Reg_15.test(num))
rt[0] = true;
}
else if(len == 18) {
if (Reg_18.test(num))
rt[0] = true;
}
return rt;
}

function rePassword(ID,ele) {
var rt = new Array();
rt[0] = false;
rt[1] = "再次密码输入不一致!";
rt[2] = 'custom';

var password = document.getElementById(ID).value;
if(password != '' || ele.value != ''){
if(password == ele.value)
rt[0] = true;
}
return rt;
}
</script>

<body>
<form id="form1" name="form1" method="post" action="" onsubmit="return CheckForm(this);">
<table width="500" border="0" align="center" cellpadding="0" cellspacing="0">
<tr>
<td width="20%" align="right">用户名:</td>
<td><input type="text" name="username" id="username" required="true" fun="UserName" msg="自定义提示信息:用户名不正确,请重新输入!" /></td>
</tr>
<tr>
<td align="right">密码:</td>
<td><input type="password" name="password" id="password" required="true" fun="PassWord" /></td>
</tr>
<tr>
<td align="right">确认密码:</td>
<td><input type="password" name="repassword" id="repassword" required="true" fun="rePassword('password')" /></td>
</tr>
<tr>
<td align="right">电子邮件:</td>
<td><input type="text" name="email" id="email" required="true" fun="isEmail" /></td>
</tr>
<tr>
<td align="right">身份证号:</td>
<td><input type="text" name="idcard" id="idcard" required="true" fun="isIdCard" /></td>
</tr>
<tr>
<td align="right">全中文项:</td>
<td><input type="text" name="chinese" id="chinese" required="true" fun="onlyZh" /></td>
</tr>
<tr>
<td align="right">其它:</td>
<td><input type="text" name="notblank" id="notblank" required="true" fun="notblank" /></td>
</tr>
<tr>
<td align="right"></td>
<td><input type="submit" name="button" id="button" value="提交" /></td>
</tr>
</table>
</form>

</body>
</html>

㈦ php 如何检测用户提交数据大小

filesize($_FILES['title']['tmp_name'])+filesize($_FILES['content']['tmp_name'])

如果我的回答没能帮助您,请继续追问。


您也可以向我们团队发出请求,会有更专业的人来为您解答。

㈧ jquery+php 注册并检测完数据库后form提交数据

我都看不明白你在说什么,看了好多遍
jquery 检测的时候总是会被jquery的回调函数牵绊住,我先等注册完后,提交的时候用form表单提交,而不用到jquery的回调函数:

㈨ php 该如何写才能检测是否按了提交按钮

if($_POST("submit")) { }

㈩ PHP编写过程中如何检测错误

一般 xx_query 函数执行的 sql 语句是 query 语句, insert, del, update这类使用 xx_exec()函数。函数一般都有返回值来表明是否成功,所以把函数返回值赋值给变量,然后判断函数返回值,如果成功再进行成功的操作,否则执行失败的操作。使用 var_mp($var) 打印返回值,即可查看函数的返回值

阅读全文

与php提交检测相关的资料

热点内容
电梯碰绿衣女变异的韩国电影 浏览:411
外出电影完整版下载 浏览:220
老电影等 浏览:235
有个小姑娘叫美娜的韩剧 浏览:143
韩国美容院老板出轨顾客的片子 浏览:870
日本爱情动作大片 浏览:617
微信好友怎么加密不能让别人看见聊天记录 浏览:145
爱情电影网 apdy类似网站 浏览:945
地铁快线和加密线 浏览:41
计算机科学程序员 浏览:356
激光手术治疗近视适合程序员吗 浏览:107
资深程序员优良习惯 浏览:358
宏晶单片机中文手册 浏览:965
主人公叫林枫的小说 浏览:773
有一个美剧学生一直想跟老师发生关系 浏览:276
kettle解压后没有bat文件 浏览:71
只剩最后一个男人的电影 浏览:578
编译原理词法未来前景 浏览:890
唐子睿 浏览:642
有弹窗广告的小说网站 浏览:745