界面:
<!doctype html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="Generator" content="EditPlus®">
<meta name="Author" content="">
<meta name="Keywords" content="">
<meta name="Description" content="">
<title>Document</title>
</head>
<body>
<form method="post" action="101_register2.php">
用户名:<input type="text" name="username"><br/>
密 码:<input type="password" name="password"><br/>
性 别:<input type="radio" name="sex" value="man">男<input type="radio" name="sex" value="women">女<br/>
<!--注意checkbox对端全部的话 一定要如下 name 值 加上中括号[] 这样传递过去系统默认处理成数组形式-->
<input type="checkbox" name="hobby[]" value="洗澡">洗澡
<input type="checkbox" name="hobby[]" value="唱歌">唱歌
<input type="checkbox" name="hobby[]" value="骑马">骑马
<input type="checkbox" name="hobby[]" value="打仗">打仗
<br/>
<!-- size 表示展示出几个 multiple 表示可以多选 -->
<select name="aihao">
<option value="中文" selected>中文</option>
<option value="英文">英文</option>
<option value="日文">日文</option>
</select>
<br/>
<textarea name="intr" rows="10" cols="30">请填写个人详细介绍</textarea>
<br/>
<input type="file" name="myphoto" />
<br/><input type="submit" value="提交">
</form>
</body>
</html>
接收:
<?php
header("content-type:text/html;charset=utf-8");//处理中文乱码
echo "<pre>";
echo var_dump($_POST);
echo "<br/>";
echo $_REQUEST['sex'];
echo "</pre>";
?>
效果:
NOTICE:注意传值能用英文就用英文比如上边性别处 写中文的话对端接收不到还得处理,麻烦
可将接收到的数据存入数据库
<?php
header("content-type:text/html;charset=utf-8");//处理中文乱码
echo "<pre>";
echo var_dump($_POST);
echo "<br/>";
//echo json_encode($_POST);//这个直接将接受的数据转化为json串
if(!empty($_REQUEST['sex'])){
echo $_REQUEST['sex'];
}
echo "</pre>";
$username = $_POST['username'];
$pwd = $_POST['password'];
$sex = $_POST['sex'];
$hobby = $_POST['hobby'];
$introduce = implode(",",$hobby);
//echo "$introduce";
$aihao = $_POST['aihao'];
$myphoto = $_POST['myphoto'];
$mysqli = new MySQLi("localhost",'root','tmdqobn','db100');
if($mysqli->connect_error){
echo "数据库连接出错".$mysqli->connect_error;
return;
}
$sql = "insert into user (username,pwd,sex,aihao,introduce,file) VALUES ('$username','$pwd','$sex','$introduce','$aihao','$myphoto')";
$res = $mysqli->query($sql);
if(!$res){
echo "添加失败";
}else{
echo "添加成功";
}
?>
效果:
mysql> select * from user;
+----------+---------+------+-------------------+-----------+--------------+----
+
| username | pwd | sex | aihao | introduce | file | id
|
+----------+---------+------+-------------------+-----------+--------------+----
+
| root | tmdqobn | m | 洗澡,唱歌,骑马,打 | 中文 | 11111111.png | 1
|
+----------+---------+------+-------------------+-----------+--------------+----
+
1 row in set (0.06 sec)
mysql>
POST、
P
O
S
T
、
_GET区别
1、安全性
2、数据传输大小 get小主要是浏览器限制
3、保存到收藏夹 get方便
$_REQUEST — HTTP Request 变量
说明
默认情况下包含了 GET, G E T , _POST 和 $_COOKIE 的数组。
$_REQUEST 可以自由接收上边任意一种
注意:官方推荐不要经常使用这个方法,容易受到攻击。