javascript trim_stripslashes()函数的作用

javascript trim_stripslashes()函数的作用[code="java"]通过PHP验证表单数据我们要做的第一件事是通过PHP的htmlspecialchars()函数传递所有变量。在我们使用htmlspecialchars()函数后,如果用户试图在文本字段中提交以下内容:location.href(‘http://www.hacked.com’)-代码不会执行,因为会被保存为转义代码,就像这样:&…

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE使用 1年只要46元 售后保障 童叟无欺



通过 PHP 验证表单数据
我们要做的第一件事是通过 PHP 的 htmlspecialchars() 函数传递所有变量。
在我们使用 htmlspecialchars() 函数后,如果用户试图在文本字段中提交以下内容:
<script>location.href('http://www.hacked.com')</script>
- 代码不会执行,因为会被保存为转义代码,就像这样:
<script>location.href('http://www.hacked.com')</script>
现在这条代码显示在页面上或 e-mail 中是安全的。
在用户提交该表单时,我们还要做两件事:
(通过 PHP trim() 函数)去除用户输入数据中不必要的字符(多余的空格、制表符、换行)
(通过 PHP stripslashes() 函数)删除用户输入数据中的反斜杠(\)
接下来我们创建一个检查函数(相比一遍遍地写代码,这样效率更好)。
我们把函数命名为 test_input()。
现在,我们能够通过 test_input() 函数检查每个 $_POST 变量,脚本是这样的:
实例
<?php
// 定义变量并设置为空值
$name = $email = $gender = $comment = $website = "";

if ($_SERVER["REQUEST_METHOD"] == "POST") {
$name = test_input($_POST["name"]);
$email = test_input($_POST["email"]);
$website = test_input($_POST["website"]);
$comment = test_input($_POST["comment"]);
$gender = test_input($_POST["gender"]);
}

function test_input($data) {
$data = trim($data);
$data = stripslashes($data);
$data = htmlspecialchars($data);
return $data;
}
?>

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/179740.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • UML——概述

    UML——概述UML——概述

    2022年4月24日
    32
  • 数据仓库 数据集市_实时数仓应用场景

    数据仓库 数据集市_实时数仓应用场景#实时数仓项目-数据采集与ODS层配置canal实时采集mysql数据一、mysql开启binlog二、安装配置canal采集数据到kafka三、启动kafka消费者验证ODS层数据处理导入hbase一、flink采集kafka数据配置canal实时采集mysql数据一、mysql开启binlog修改mysql的配置文件(linux:/etc/my.cnf,Windows:\my.ini)log-bin=mysql-bin#开期binlogbinlog-format=ROW#选择ROW

    2022年9月27日
    0
  • snmp协议原理「建议收藏」

    snmp协议原理「建议收藏」snmp原理snmp:简单网络管理协议,SimpleNetworkManagementProtocol。用于网络管理的协议,管理员通过snmp的读操作(GET)向设备获取数据,通过snmp的写操作(SET)向设备执行设置操作;设备通过snmp的trap操作(报警)向管理员通报设备的重要状况改变事件。snmp的基本思想是为不同种类、不同厂家、不同型号的设备定义一个统一的接口和协议,使管

    2022年10月16日
    0
  • 个人渗透笔记_web渗透

    个人渗透笔记_web渗透【拿shell】1.直接上传aspasajspcerphpaspxhtrcdx格式的木马,不行就利用IIS6.0解析漏洞”:1.asp;1.jpg/1.asp;.jpg/1.asp;jpg/1.asp;.xls2.上传图片木马遇到拦截系统,连图片木马都上传不了,记事本打开图片木马在代码最前面加上gif89a,一般就能逃过拦截系统了。3.上传图片木马把地址复制到数据库

    2022年9月21日
    0
  • MySql优化

    MySql优化MySql优化

    2022年4月23日
    44
  • Pycharm git 使用简介

    Pycharm git 使用简介1.VCS版本控制服务器(GITCVSSVN)2.VCS—&gt;checkoutfromversioncontrol从服务器clone代码并且创建本地项目,默认切换到主分支(master)3.gitignore文件:用来添加忽略文件4.右键—&gt;Git—&gt;Repository—&gt;Branches创建并切换到dev分支5.开发到一定阶段将dev分支…

    2025年8月1日
    1

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号