相册功能实现(包含php图片上传,后台管理,浏览和删除)教程例子包括五个部分:
一、相册首页
<html> <head> <meta charset="utf-8"> <title>相册首页</title> <style> body{ width:800px; margin:0 auto; test-align:center; } </style> </head> <body> <h1>The simple photo album.</h1> <center> <?php error_reporting(0); if(!$_GET["page"]){ $page = 1; }else $page = $_GET["page"]; $filename = "data.dat"; $myfile = file($filename); $z = $myfile[0]; if($z == NULL){ echo "目前记录条数为:0"; }else{ $temp = explode("||",$myfile[0]); echo "共有".$temp[0]."条内容"; echo " "; $p_count = ceil($temp[0]/8); echo "分".$_count."页显示"; echo " "; echo "当前显示第".$page."页"; echo " "; echo "<br>"; if($page != ceil($temp[0]/8)){ $current_size = 8; }else{ $current_size = $temp[0]%8; } if($current_size == 0){ $current_size = 8; } for($i=0;$i<ceil($current_size/4);$i++){ for($j=0;$j<4;$j++){ $temp = explode("||", $myfile[$i*4+$j+($page-1)*8]); if(($i*4+$j+($page-1)*8)<$z){ $imgfile = "./images/".$temp[1]; $flag = getimagesize($imgfile); echo "<a href=viewimage.php?id=".$temp[0]."><img src=/test/images/".$temp[1]; if($flag[0]>180||$flag[1]>100){ echo " width=180 height=".ceil($flag[1]*180/$flag[0]); } echo " border=\"0\"></a>"; }else{ echo ""; } } } echo "</table>"; } echo "<p>"; $prev_page = $page - 1; $next_page = $page + 1; if($page <= 1){ echo "第一页 | "; }else{ echo "<a href='$PATH_INFO?page=1'>第一页</a> | "; } if($prev_page < 1){ echo "上一页 | "; }else{ echo "<a href='$PATH_INFO?page=$prev_page'>上一页</a> | "; } if($next_page > $p_count){ echo "下一页 | "; }else{ echo "<a href='$PATH_INFO?page=$next_page'>下一页</a> | "; } if($page >= $p_count){ echo "最后一页</p>\n"; }else{ echo "<a href='$PATH_INFO?page=$p_count'>最后一页</a></p>\n"; } ?> </center> <a href="upfile.php">Upload Files</a> </body> </html>
二、后台管理
<html> <head> <meta charset="utf-8"> <title>后台处理页面</title> </head> <body> <?php error_reporting(1); if($_FILES['upfile']['name'] == NULL){ echo "No file choice."; echo "<a href='upfile.php'>返回</a>"; }else{ $filepath = "/Library/WebServer/Documents/test/images/"; $tmp_name = $_FILES['upfile']['tmp_name']; $filename = $filepath.$_FILES['upfile']['name']; // echo $filename; if(move_uploaded_file($tmp_name,$filename)){ $dataname = "data.dat"; $myfile = file($dataname); if($myfile[0] == ""){ $fp = fopen($dataname, "a+"); fwrite($fp,"1||".$_FILES['upfile']['name']."||".$_POST["content"]."||".date(Y年m月d日)."\n"); fclose($fp); }else{ $temp = explode("||", $myfile[0]); $temp[0]++; $fp = fopen($dataname, "r"); $line_has = fread($fp,filesize("$dataname")); fclose($fp); $fp = fopen($dataname, "w"); fwrite($fp,$temp[0]."||".$_FILES['upfile']['name']."||".$_POST["content"]."||".date("Y年m月d日")."\n"); fwrite($fp,"$line_has"); fclose($fp); } echo "<p></p>"; echo "指定文件已经上传成功!"; echo "<p></p>"; echo "点<a href='index.php'>返回</a>"; }else{ echo "文件上传失败!"; } } ?> </body> </html>
三、图片上传
<html> <head> <meta charset="utf-8"> <title>相册上传页面</title> </head> <body> <script language="javascript"> function Juge(theForm){ if(theForm.upfile.value==""){ alert("Please choice file!"); theForm.upfile.focus(); return (false); } if(theForm.content.value==""){ alert("Please input image information!"); theForm.content.focus(); return (false); } if(theForm.content.value.length>60){ alert("The information must less than 60 chars."); theForm.content.focus(); return (false); } } </script> <center> <h1>Image album upload page</h1> <p> <a href="index.php">返回首页</a> <table border="1"> <form enctype="multipart/form-data" action="system.php" method="post" οnsubmit="return Juge(this)"> <tr> <td>选择图片:</td> <td><input name="upfile" type="file"></td> </tr> <tr> <td>输入说明:</td> <td><input name="content" type="text">(*限30字)</td> </tr> <tr> <td colspan="2"> <center> <input type="submit" value="提交"> <input type="reset" value="重置"> </center> </td> </tr> </form> </table> </p> </center> </body> </html>
四、图片浏览
<html> <head> <meta charset="utf-8"> <title>查看图片</title> </head> <body> <center> <h1>View images.</h1> <?php error_reporting(0); if(!$_GET["id"]){ echo "No assign id."; echo "<a href='index.php'>首页</a>"; exit(); }else{ ?> <a href="index.php">返回首页</a> <a href="delimage.php?id=<?php echo $_GET['id'] ?>">删除图片</a><br> <?php $id = $_GET["id"]; $filename = "data.dat"; $myfile = file($filename); $z = $myfile[0]; if($z == ""){ echo "目前记录条数为0"; }else{ $temp = explode("||", $myfile[$z-$id]); echo "<p>"."文件名:".$temp[1]."</p>"; echo "<p><img src=/test/images/".$temp[1]."></p>"; echo "<p>图片简介:".$temp[2]."</p>"; echo "<p>上传日期:".$temp[3]."</p>"; } } ?> </center> </body> </html>
五、删除图片
<html> <head> <meta charset="utf-8"> <title>删除图片</title> </head> <body> <?php error_reporting(0); if(!$_GET["id"]){ echo "No id assign."; echo "<br>"; echo "<a href='index.php'>首页</a>"; exit(); }else{ $id = $_GET["id"]; $filename = "data.dat"; $myfile = file($filename); $z = $myfile[0]; if($z == NULL){ echo "目前记录条数为:0"; }else{ $temp = explode("||", $myfile[$z-$id]); print_r($temp); $filepath = "/Library/WebServer/Documents/test/images/"; $imgfile = $filepath.$temp[1]; echo $imgfile; unlink($imgfile); for($i=0;$i<($z-$id);$i++){ $temp2 = explode("||", $myfile[$i]); $temp2[0]--; if($temp2[0]>0) $text2 = $text2.$temp2[0]."||".$temp2[1]."||".$temp2[2]."||".$temp2[3]; } for($i=($z-$id+1);$i<$z;$i++){ $text1 = $text1.$myfile[$i]; } $fp = fopen($filename, "w"); fwrite($fp, $text2); fwrite($fp, $text1); fclose($fp); echo "指定文件已经删除成功!"; echo "<a href='index.php'>首页</a>"; } } ?> </body> </html>