Python语言技术文档

微信小程序技术文档

php语言技术文档

jsp语言技术文档

asp语言技术文档

C#/.NET语言技术文档

html5/css技术文档

javascript

点击排行

您现在的位置:首页 > 技术文档 > ajax

Ajax 提交表单数据到入库的全盘操作流程分享

来源:中文源码网    浏览:160 次    日期:2024-05-01 15:57:39
【下载文档:  Ajax 提交表单数据到入库的全盘操作流程分享.txt 】


Ajax 提交表单数据到入库的全盘操作流程分享
*******php项目中当我们要对数据库进行写入操作时,有时会因为代码没有做防sql注入工作,导致各种不可预知的错误******* 1,index.htm 这是一个很简单的注册页面l 我这是以ajax形式提交数据 复制代码 代码如下: RegisterForm

This is a test form!

user :
ages :
pass :
addr :
email :

2,_process.php接收ajax提交数据 并做相关处理的文件 复制代码 代码如下: -1,'msg'=>'请您认真输入姓名'));exit; } //查询username在 tb_register 表中是否存在,不存在则入库,存在则告知已注册 $sql0 = "select count(1) as nums from tb_register where username='{$name}'"; $row0 = select_one($conn,$sql0); if($row0['nums']>=1){ echo json_encode(array('res'=>-1,'msg'=>'对不起,该用户名已被注册!'));exit; } if(empty($ages)){ echo json_encode(array('res'=>-1,'msg'=>'请您认真输入年龄'));exit; } if(!preg_match("/^\d+$/",$ages)){ echo json_encode(array('res'=>-1,'msg'=>'请输入合法的数字'));exit; } if(empty($pass)){ echo json_encode(array('res'=>-1,'msg'=>'请您认真输入密码'));exit; } if(empty($addr)){ echo json_encode(array('res'=>-1,'msg'=>'请您认真输入地址'));exit; } if(empty($email)){ echo json_encode(array('res'=>-1,'msg'=>'请您认真输入邮箱'));exit; } if(!preg_match("/^[a-zA-Z0-9_]+@[a-zA-Z0-9_]+(\.[a-zA-Z]+)+$/",$email)){ echo json_encode(array('res'=>-1,'msg'=>'您的邮箱格式不正确'));exit; } $add_day = date("YmdHis"); //以下是入库操作 $sql = "insert into tb_register set username='{$name}',ages='{$ages}',password='{$pass}',address='{$addr}',email='{$email}',add_day='{$add_day}'"; mysqli_query($conn,$sql); echo json_encode(array('res'=>1,'msg'=>'恭喜你,注册成功!'));exit; //预防mysql注入攻击函数 入库数据 function mysqlQuotes($content){ if(!get_magic_quotes_gpc()) //先看看是否开启自动过滤机制 未开启则手动加函数过滤 { $content = addslashes($content); } return stripslashes(htmlspecialchars($content)); } function select_one($conn,$sql){ $res = mysqli_query($conn,$sql) or die("Failed".mysqli_error()); $result = array(); if(!empty($res)){ $result = mysqli_fetch_assoc($res); } mysqli_free_result($res); return $result; } ******以上 自定义函数mysqlQuotes中********** Tips1, (PS:T不错的PHP Q扣峮:276167802,验证:csl) addslashes 函数的作用是给指定的字符加上反斜杠,主要有以下特殊字符 单引号(') , 双引号(") , 反斜杠(\) , NULL Tips2, htmlspecialchars 函数的作用是把一些特殊的字符转换为html实体 ,这些特定的字符有: & (和号) ==> & " (双引号) ==> " ' (单引号) ==> ' < (小于号) ==> < > (大于号) ==> > Tips3, stripslashes 函数作用是删除 由addslashes ()函数添加的饭斜杠,恢复原来的摸样 如,$username 用户输入的是 Tom‘siy 存进数据库的是加反斜杠的 Tom\‘siy; 取出来之则可以用stripslashes() 将其还原输出 Tom‘siy 以上是本文关于Ajax 提交表单数据到入库的全盘操作流程,希望本文对广大php开发者有所帮助,感谢阅读本文。

相关内容