php相册功能实现(包含php图片上传,后台管理,浏览和删除)教程例子

相册功能实现(包含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 "&nbsp;&nbsp;&nbsp;&nbsp;";
            $p_count = ceil($temp[0]/8);
            echo "分".$_count."页显示";
            echo "&nbsp;&nbsp;&nbsp;&nbsp;";
            echo "当前显示第".$page."页";
            echo "&nbsp;&nbsp;&nbsp;&nbsp;";
            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" 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>

四、图片浏览

<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>&nbsp;&nbsp;&nbsp;&nbsp;
        <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>
时间: 2024-11-05 22:47:26

php相册功能实现(包含php图片上传,后台管理,浏览和删除)教程例子的相关文章

微信端调取相册和摄像头,实现图片上传,并上传到本地服务器

在微信公众号网页开发时,遇到了图片上传的问题,查看了微信的开发者文档,里面的资料比较全.接着我们看一下整个的流程 1.config权限配置 $.ajax({ url:'wx_getConfig', type:'get', dataType:'json', async:false, success:function(data){ var appId = data[0].appId; var timestamp = data[0].timestamp; var nonceStr = data[0].

小程序_图片剪切功能(支持多图片上传)

前端图片剪切上传功能是常见的功能,在开发过程中,研发一个这样的功能要花的时间也会很多,现在把一个研发好了的图片剪切插件发出来.支持剪切和大小缩放. wxml 1 <!--图片展示 --> 2 <view bindtap='upEwm' data-which='1'> 3 <view>第一个图</view> 4 <image style='width:200rpx;height:200rpx;background-color:red' src='{{he

Django(十九)文件上传:图片上传(后台上传、自定义上传)、

一.基本设置 参考:https://docs.djangoproject.com/zh-hans/3.0/topics/http/file-uploads/ 1)配置project1/settings.py 因为图片也属于静态文件,所以保存到static目录下. MEDIA_ROOT=os.path.join(BASE_DIR,"static/media") 2)在static目录下创建media目录,再创建应用名称的目录,此例为app1 F:\Test\django-demo\pro

plupload简易应用 多图片上传显示预览以及删除

<script> var uploader = new plupload.Uploader({ //实例化一个plupload上传对象 browse_button: 'btnBrowse', url: 'upload.ashx', flash_swf_url: 'Resource/scripts/js/Moxie.swf', silverlight_xap_url: 'Resource/scripts/js/Moxie.xap', filters: { mime_types: [ //只允许上

yii2-basic后台管理功能开发之四:图片上传FileInput

我采用的是 kartik-v/yii2-widget-fileinput的文件上传插件,大家可以去github查看详细的安装方法和使用说明. 需求:上传图片+可以预览缩略图 在这里说说我碰到的问题:限制图片长宽尺寸. 1,首先想到的是,在models里设置图片的长宽的限制 %>_<%,不可以,models获取到的总是预览的缩略图的尺寸....... 2,其次利用插件里的长宽的限制 %>_<%,虽然尺寸不合适会有提示,但是依然可以提交提交........... 3,在控制器里对图片的

图片上传后台

import request from '@/utils/request' export function createExpert(data) { return request({ url: '/expert', method: 'post', data })} import java.io.IOException; import javax.validation.Valid; import org.springframework.data.domain.Page;import org.spr

kindeditor扩展粘贴图片功能&amp;修改图片上传路径并通过webapi上传图片到图片服务器

前言 kindeditor是一个非常好用的富文本编辑器,它的简单使用我就不再介绍了. 而kindeditor却对图片的处理不够理想. 本篇博文需要解决的问题有两个: kindeditor扩展粘贴图片功能 kindeditor修改图片上传路径并通过webapi上传图片到图片服务器(支持分布式图片) 结果演示 1.扩展粘贴图片功能演示 2.修改图片上传路径演示: 我们的网站演示地址是:http://localhost:9393/ 我们的图片服务器地址是:http://localhost:9394/

web 图片上传实现本地预览

前言: 刚成为码农不久,第一次工作中接触图片上传功能,说到图片上传,大多数程序员可能都是先上传服务器,再获取路径.如果用户多长更改图片,服务器会产生许多垃圾文件.怎样用js实现本地预览.今天特意抽空百度研究了一下. 在说上传之前先说说如何替换or美化浏览器自带的简陋上传按钮(自定义自己的上传按钮 如:img): 1.将自定义上传按钮上方添加 input file 框,实现input实现透明处理. 2.对自定义上传按钮添加事件.隐藏真正input框.用事件来触发: function imgBtn(

asp.net 中 UEditor 图片上传失败的处理方法

1.0 找到 net 文件夹下面的 web.config 配置文件,注释掉如下的两句: 2.0 Uploader文件默认属性为编译,将其属性改为内容以后重新运行程序,图片上传成功. 3.0 删除 imageUp.ashx 中的 <%@ Assembly Src="Uploader.cs" %> asp.net 中 UEditor 图片上传失败的处理方法