php表单学习

php超全局变量
$GLOBALS用于在任意位置访问全局变量,在名为$GLOBALS[index]中存储全局变量,变量名字就是数组的键。
$_SERVER保存关于报头,路径和脚本位置信息。
<?php
echo $_SERVER[‘PHP_SELF‘]."<br>";//当前执行脚本的文件名
echo $_SERVER[‘SERVER_NAME‘]."<br>";//当前运行脚本所在服务器的主机名
echo $_SERVER[‘HTTP_HOST‘]."<br>";//来自当前请求的Host头
echo $_SERVER[‘HTTP_REFERER‘]."<br>";//返回从哪个页面连接过来的
echo $_SERVER[‘HTTP_USER_AGENT‘]."<br>";//检查访问这用的什么操作系统(包括版本号),浏览器(包括版本号)和用户个人偏好
echo $_SERVER[‘SCRIPT_NAME‘]."<br>";//当前脚本路径
?>
php表单
<form method="post" action="<?php echo $_SERVER[‘PHP_SELF‘];?>">
Name: <input type="text" name="fname">
<input type="submit">
</form>

<?php
$name = $_REQUEST[‘fname‘];
echo $name;
?>
get方法
2.php:<a href="1.php?subject=PHP&web=W3school.com.cn">test $GET</a>
1.php:
<?php
echo "Study ".$_GET[‘subject‘]." at ".$_GET[‘web‘];
?>

get,post,request的区别:
$_GET变量接受所有以get方式发送的请求,及浏览器地址栏中的?之后的内容
$_POST变量接受所有以post方式发送的请求,例如,一个form以method=post提交,提交后php会处理post过来的全部变量
而$_REQUEST支持两种方式发送过来的请求,即post和get它都可以接受
显示不显示要看传递方法,get会显示在url中(有字符数限制),post不会在url中显示,可以传递任意多的数据(只要服务器支持)

GET vs. POST
GET 和 POST 都创建数组(例如,array( key => value, key2 => value2, key3 => value3, ...))。此数组包含键/值对,其中的键是表单控件的名称,而值是来自用户的输入数据。
GET 和 POST 被视作 $_GET 和 $_POST。它们是超全局变量,这意味着对它们的访问无需考虑作用域 - 无需任何特殊代码,您能够从任何函数、类或文件访问它们。
$_GET 是通过 URL 参数传递到当前脚本的变量数组。
$_POST 是通过 HTTP POST 传递到当前脚本的变量数组。

get发送的信息对任何人都是可见的,不超过2000字符,不适合发送敏感数据。
htmlspecialchars()把特殊字符转换为html实体,可以防止跨站点脚本攻击(实体字符对大小写敏感)
trim()去除用户输入数据中不必要的字符(多余的空格,制表符,换行)
stripslashes()删除用户输入数据中的反斜杠

<html>
<body>
<?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;
}

?>
<form method="post" action="<?php echo htmlspecialchars($_SERVER[‘PHP_SELF‘]);?>">
Name:<input type="text" name="name"><br>
E-mail:<input type="text" name="email"><br>
Website:<input type="text" name="website"><br>
Comment:<textarea name="comment" rows="5" cols="40"></textarea><br>
Gender:
<input type="radio" name="gender" value="female">Female
<input type="radio" name="gender" value="male">Male<br>
<input type="submit" name="submit" value="submit">
</form>

<?php
echo "<h2>your input:</h2>";
echo $name."<br>";
echo $email."<br>";
echo $website."<br>";
echo $comment."<br>";
echo $gender."<br>";
?>

</body>
</html>
不知道为什么无法进行过滤,w3school上的源码也无法进行过滤。。。等以后在解决吧

时间: 2024-08-09 19:52:15

php表单学习的相关文章

&lt;form&gt;表单学习

今天主要学习<form>标签 <input>输入标签 method方法分post和get两种 主要区别 (1)post信息是加密的,get则是明文. (2)get数据量不超过2k,post一般不受限制. (3)post主要写在form表单里,get主要以URL地址栏链接的形式使用. (4)post主要用于向服务器传送数据,get主要用于向服务器要数据. 下面写个登录表的代码: <!DOCTYPE html> <html> <head> <m

表单学习

一.基础 <body><font size="45" color="#FF0000"><strong>4.表单</strong></font><br/><form>文本框<input type="text" value="123"/><br/>密码框<input type="password"

PHP 文件上传表单 ~~学习笔记

PHP文件上传 通过PHP,可以把文件上传到服务器. ------------------------------------------------------------------------------------------------------------------- 创建一个文件上传表单:允许用户从表单上传文件时非常有用的: 下面是一个供上传文件的html表单: <html> <body> <form action="upload_file.php

表单学习心得

表单 1元素 form 用于后台提交数据使用 input 输入数据 tape 类型 value 值 其中常用的type类型: radio 单选 checkbox 多选 text 文本 password 密码 button按钮 分为三种 submit 带提交的按钮 <button></button>标签按钮 input插入按钮,其中标签按钮常用 seset 重置 image 图片 hidden 隐藏 color 颜色 HTML5 TYPE类型 file 文件 date日期(mouth

from表单学习

FORM标记的属性解释如下: name:表单的名称 method:定义表单结果从浏览器传送到服务器的方法,一般有两种方法get和post action:用来定义表单处理程序(一个ASP,CGI等程序)的位置( 相对地址或绝对地址) enctype:设置表单资料的编码方式 target:设置返回信息的显示方式 NAME属性 通过为表单命名可以控制表单与后台程序之间的关系. METHOD属性 METHOD属性中,GET方法是将表单内容附在URL地址后面,所以对提交信息的长度进行了限制,不可以超过81

Html学习之十六(表格与表单学习--课程表制作)

<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title>课程表</title> <style> table{/*设置外部相关属性,不要设置内部属性*/ width: 500px; height: 300px; border: 3px black solid; margin: 100px auto; /*padding: 20px;*/ bo

学习W3CSCHOOL 表单验证

1 //表单学习笔记 2 //建立一张表单的验证 3 <!DOCTYPE html> 4 <html> 5 <head> 6 <meta http-equiv="Content-Type" content="text/html;charset=utf-8"/> 7 <title>表单验证</title> 8 </head> 9 <body> 10 <?php 11

玩转html5(三)---智能表单(form),使排版更加方便

<!DOCTYPE html> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title>form表单学习笔记</title> </head> <body> <!-- 在旧版的html中,form表单与input等元素必须嵌套使用,为了排版方便,在html中提出了新方法

[原创]java WEB学习笔记34:Session 案例 之 解决表单重复提交

本博客为原创:综合 尚硅谷(http://www.atguigu.com)的系统教程(深表感谢)和 网络上的现有资源(博客,文档,图书等),资源的出处我会标明 本博客的目的:①总结自己的学习过程,相当于学习笔记 ②将自己的经验分享给大家,相互学习,互相交流,不可商用 内容难免出现问题,欢迎指正,交流,探讨,可以留言,也可以通过以下方式联系. 本人互联网技术爱好者,互联网技术发烧友 微博:伊直都在0221 QQ:951226918 ---------------------------------