波波张 發表於 2019-7-31 17:41:00

PHP上传图片基本代码示例

<p>一、HTML代码如下:</p>
<div class="cnblogs_code">
<pre>&lt;form name=<span style="color: rgba(128, 0, 0, 1)">"</span><span style="color: rgba(128, 0, 0, 1)">form2</span><span style="color: rgba(128, 0, 0, 1)">"</span> method=<span style="color: rgba(128, 0, 0, 1)">"</span><span style="color: rgba(128, 0, 0, 1)">post</span><span style="color: rgba(128, 0, 0, 1)">"</span> action=<span style="color: rgba(128, 0, 0, 1)">"</span><span style="color: rgba(128, 0, 0, 1)">?type=add</span><span style="color: rgba(128, 0, 0, 1)">"</span> enctype=<span style="color: rgba(128, 0, 0, 1)">"</span><span style="color: rgba(128, 0, 0, 1)">multipart/form-data</span><span style="color: rgba(128, 0, 0, 1)">"</span>&gt;
&lt;input type=<span style="color: rgba(128, 0, 0, 1)">"</span><span style="color: rgba(128, 0, 0, 1)">file</span><span style="color: rgba(128, 0, 0, 1)">"</span> name=<span style="color: rgba(128, 0, 0, 1)">"</span><span style="color: rgba(128, 0, 0, 1)">file</span><span style="color: rgba(128, 0, 0, 1)">"</span> id=<span style="color: rgba(128, 0, 0, 1)">"</span><span style="color: rgba(128, 0, 0, 1)">cover</span><span style="color: rgba(128, 0, 0, 1)">"</span> required/&gt;
&lt;/form&gt;</pre>
</div>
<p>二、PHP代码如下:</p>
<div class="cnblogs_code">
<pre><span style="color: rgba(0, 0, 255, 1)">if</span> ((<span style="color: rgba(128, 0, 128, 1)">$_GET</span>["type"] == "edit") &amp;&amp; <span style="color: rgba(128, 0, 128, 1)">$_POST</span><span style="color: rgba(0, 0, 0, 1)">) {
    </span><span style="color: rgba(0, 128, 0, 1)">//</span><span style="color: rgba(0, 128, 0, 1)">判断上传的文件是否出错,是的话,返回错误</span>
    <span style="color: rgba(0, 0, 255, 1)">if</span>(<span style="color: rgba(128, 0, 128, 1)">$_FILES</span>["file"]["error"<span style="color: rgba(0, 0, 0, 1)">])
    {
      </span><span style="color: rgba(0, 0, 255, 1)">echo</span> <span style="color: rgba(128, 0, 128, 1)">$_FILES</span>["file"]["error"<span style="color: rgba(0, 0, 0, 1)">];
      </span><span style="color: rgba(0, 0, 255, 1)">exit</span><span style="color: rgba(0, 0, 0, 1)">;
    }
    </span><span style="color: rgba(0, 0, 255, 1)">else</span><span style="color: rgba(0, 0, 0, 1)">
    {
      </span><span style="color: rgba(0, 128, 0, 1)">//</span><span style="color: rgba(0, 128, 0, 1)">没有出错
      //加限制条件
      //判断上传文件类型为png或jpg且大小不超过1024000B</span>
      <span style="color: rgba(0, 0, 255, 1)">if</span>((<span style="color: rgba(128, 0, 128, 1)">$_FILES</span>["file"]["type"]=="image/png"||<span style="color: rgba(128, 0, 128, 1)">$_FILES</span>["file"]["type"]=="image/jpeg")&amp;&amp;<span style="color: rgba(128, 0, 128, 1)">$_FILES</span>["file"]["size"]&lt;1024000<span style="color: rgba(0, 0, 0, 1)">)
      {
            </span><span style="color: rgba(0, 128, 0, 1)">//</span><span style="color: rgba(0, 128, 0, 1)">防止文件名重复</span>
            <span style="color: rgba(128, 0, 128, 1)">$path</span> = "/upload/movie/".<span style="color: rgba(0, 128, 128, 1)">date</span>('Y-m-d')."/".<span style="color: rgba(0, 128, 128, 1)">time</span>().<span style="color: rgba(128, 0, 128, 1)">$_FILES</span>["file"]["name"<span style="color: rgba(0, 0, 0, 1)">];
            </span><span style="color: rgba(128, 0, 128, 1)">$filename</span> = <span style="color: rgba(128, 0, 128, 1)">$_SERVER</span>['DOCUMENT_ROOT'].<span style="color: rgba(128, 0, 128, 1)">$path</span><span style="color: rgba(0, 0, 0, 1)">;
            </span><span style="color: rgba(0, 128, 0, 1)">//</span><span style="color: rgba(0, 128, 0, 1)">转码,把utf-8转成gb2312,返回转换后的字符串, 或者在失败时返回 FALSE。
            //$filename =iconv("UTF-8","gb2312",$filename);
            //检查文件或目录是否存在</span>
            <span style="color: rgba(0, 0, 255, 1)">if</span>(<span style="color: rgba(0, 128, 128, 1)">file_exists</span>(<span style="color: rgba(128, 0, 128, 1)">$filename</span><span style="color: rgba(0, 0, 0, 1)">))
            {
                </span><span style="color: rgba(0, 0, 255, 1)">echo</span>"该文件已存在"<span style="color: rgba(0, 0, 0, 1)">;
                </span><span style="color: rgba(0, 0, 255, 1)">exit</span><span style="color: rgba(0, 0, 0, 1)">;
            }
            </span><span style="color: rgba(0, 0, 255, 1)">else</span><span style="color: rgba(0, 0, 0, 1)">
            {
                </span><span style="color: rgba(0, 128, 0, 1)">//</span><span style="color: rgba(0, 128, 0, 1)">保存文件,   move_uploaded_file 将上传的文件移动到新位置</span>
                <span style="color: rgba(0, 0, 255, 1)">if</span> ( ! @<span style="color: rgba(0, 128, 128, 1)">copy</span>(<span style="color: rgba(128, 0, 128, 1)">$_FILES</span>['file']['tmp_name'], <span style="color: rgba(128, 0, 128, 1)">$file_name</span><span style="color: rgba(0, 0, 0, 1)">)){
                  </span><span style="color: rgba(128, 0, 128, 1)">$dir</span> = <span style="color: rgba(128, 0, 128, 1)">$_SERVER</span>['DOCUMENT_ROOT'].'/upload/moviepic/'.<span style="color: rgba(0, 128, 128, 1)">date</span>('Y-m-d'<span style="color: rgba(0, 0, 0, 1)">);
                  </span><span style="color: rgba(0, 0, 255, 1)">if</span>(!<span style="color: rgba(0, 128, 128, 1)">is_dir</span>(<span style="color: rgba(128, 0, 128, 1)">$dir</span><span style="color: rgba(0, 0, 0, 1)">)){
                        </span><span style="color: rgba(0, 128, 128, 1)">mkdir</span>(<span style="color: rgba(128, 0, 128, 1)">$dir</span>,0777<span style="color: rgba(0, 0, 0, 1)">);
                  }
                  </span><span style="color: rgba(0, 0, 255, 1)">if</span>(<span style="color: rgba(0, 128, 128, 1)">move_uploaded_file</span>(<span style="color: rgba(128, 0, 128, 1)">$_FILES</span>['file']['tmp_name'],<span style="color: rgba(128, 0, 128, 1)">$filename</span><span style="color: rgba(0, 0, 0, 1)">)){
                        </span><span style="color: rgba(0, 0, 255, 1)">echo</span> "上传成功"<span style="color: rgba(0, 0, 0, 1)">;
                  }</span><span style="color: rgba(0, 0, 255, 1)">else</span><span style="color: rgba(0, 0, 0, 1)">{
                        </span><span style="color: rgba(0, 0, 255, 1)">echo</span> "上传失败"<span style="color: rgba(0, 0, 0, 1)">;
                        </span><span style="color: rgba(0, 0, 255, 1)">exit</span><span style="color: rgba(0, 0, 0, 1)">;
                  }
                }


            }
      }
      </span><span style="color: rgba(0, 0, 255, 1)">else</span><span style="color: rgba(0, 0, 0, 1)">
      {
            </span><span style="color: rgba(0, 0, 255, 1)">echo</span>"文件类型不对"<span style="color: rgba(0, 0, 0, 1)">;
      }
    }
}</span></pre>
</div>
<p>&nbsp;</p><br><br>
来源:https://www.cnblogs.com/phperlinxinlan/p/11277948.html
頁: [1]
查看完整版本: PHP上传图片基本代码示例