针对多用户实现头像上传功能PHP代码 适用于登陆(2)

< ?php $ url = "http://bbs.lampbrother.net" ; echo " < script language = 'javascript' type = 'text/javascript' > "; echo " window.location.href = '$url' "; echo " < /script > "; ?>

注意: 使用JavaScript方式,代码放置的位置可以随意,只要是符合语法要求即可。 

上传页面

个人主页

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title><?php session_start(); echo $_SESSION['username']."的个人主页"; ?></title> <style> img { width:128px; height:auto; } </style> </head> <body> <div> <img src="https://www.jb51.net/article/root/lover.png" /><br /> <form action="./uploadphoto.php" method="post" enctype="multipart/form-data"> <input type="file" /> <input type="submit" value="上传新头像"/> </form> <script> function uploadphoto(){ document.getElementById("userphoto").src = "./root/<?php echo $_SESSION['username'];?>.png" } window.onload = function(){ uploadphoto(); } </script> </div> </body> </html>

上传核心

上传的核心还是一个表单,我们把要进行上传的图片上传到服务器,然后php使用move_uploaded_file来实现文件的迁移,实现上传。

<?php session_start(); header("Content-Type:text/html;charset=utf-8"); // 附件的存储位置、附件的名字 $path = "./root/"; $username = $_SESSION['username']; // 拼接成该文件在服务器上的名称 $server_name = $path.$username.".png"; if($_FILES['photo']['error']>0) { die("出错了!".$_FILES['photo']['error']); } if(move_uploaded_file($_FILES['photo']['tmp_name'],$server_name)){ //echo "<BR>"."Upload Success!"; echo "恭喜您,上传成功!"."<br />3秒后将自动跳转到个人主页!"; header("refresh:3;url=./personalpage.php"); }else{ //echo "<BR>"."Upload Failed!".$_FILES['photo']['error']; echo "对不起,上传头像失败了!"; header("refresh:2;url=./index.php"); } ?>

最终结果

登陆页面

验证结果

个人主页

最新头像

总结

回顾一下,本次试验的收获。
 •session的开启必须在php文件的开头session_start()
 •php可以实现的页面跳转的方式
 •上传文件
 •验证码制作与使用
 •JavaScript:void(0);的使用核心

大致的内容就是这么多,虽然没有增加美化效果,但是麻雀虽小,五脏也算是俱全了。

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/26459c3cc2f78e49840fe201335649d7.html