Home >Backend Development >PHP Problem >How to implement the php photo album function
How to implement the php album function: 1. Create the album homepage and achieve the paging effect; 2. Create the background processing page; 3. Implement the album upload page; 4. Define the picture browsing function; 5. Through "unlink( $imgfile);" and other statements can realize the function of deleting pictures.
The operating environment of this article: Windows7 system, PHP7.1 version, DELL G3 computer
How to implement the php photo album function?
The album function implementation (including PHP image upload, background management, browsing and deletion) tutorial example includes five parts:
1. Album homepage
<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>
2. Backend Management
<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>
3. Picture upload
<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" onsubmit="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>
4. Picture browsing
<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>
5. Delete pictures
<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>
Recommended learning: "PHP Video Tutorial》
The above is the detailed content of How to implement the php photo album function. For more information, please follow other related articles on the PHP Chinese website!