<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title></title>
</head>
<body>
<form action="" method="post">
姓名 : <input type="text" name="name" id="name" value="" />
性別 : <input type="text" name="sex" id="sex" value="" />
學校 : <input type="text" name="school" id="school" value="" />
頭像 : <input type="file" name="pic" id="pic" value="" />
<img id="myPic" src=""/>
<input type="button" id="btn" name="btn" value="提交"/>
</form>
</body>
<script type="text/javascript">
var myPic = document.getElementById("myPic");
var btn = document.getElementById("btn");
//創(chuàng)建一個 xhr 對象
var xhr = new XMLHttpRequest();
//數據加載成功之后
xhr.onload=function(){
// console.log(this.responseText);
myPic.src = this.responseText;
}
btn.onclick=function(){
//設置數據
var formData = new FormData();
formData.append("name",document.getElementById("name").value);
formData.append("sex",document.getElementById("sex").value);
formData.append("school",document.getElementById("school").value);
formData.append("pic",document.getElementById("pic").files[0]);
// console.log(document.getElementById("pic").files);
//open
xhr.open("POST","register.php");
//send
xhr.send(formData);
}
</script>
</html>
<?php
//首先上傳頭像 如果頭像上傳不成功 就認為注冊失敗
//獲取文件
if(!empty($_FILES)){
$strs = moveFile($_FILES["pic"]);
//如果上傳成功了就寫入文件
if($strs){
$pf = fopen("record.txt","a+");
$name = htmlspecialchars($_POST["name"]);
$sex = htmlspecialchars($_POST["sex"]);
$school = htmlspecialchars($_POST["school"]);
$pic = $strs;
$line = $name."|".$sex."|".$school."|".$pic."\n";
fwrite($pf,$line);
fclose($pf);
echo $strs;
}
}
//圖片保存到指定的位置
function moveFile($upload){
if(!is_dir("images")){ // is_dir(file)函數判斷指定的文件夾是否存在 file 是一個相對路徑
mkdir("images"); // mkdir()函數創(chuàng)建文件夾
}
if(is_uploaded_file($upload['tmp_name'])){ // 判斷上傳是不是通過HTTP POST上傳的
$str=stristr($upload['name'],'.'); // 獲取文件后綴名稱
// strtotime()函數定義一個Unix時間戳
$path="images/".$upload["name"]; // 定義上傳文件的存儲位置
if(move_uploaded_file($upload['tmp_name'],$path)){ // 執(zhí)行文件上傳操作
return $path; // 返回文件路徑
}else{
return false; //上傳不成功返回false
}
}
}
?>