本文实例讲述了php上传图片客户端和服务器端实现方法。分享给大家供大家参考。具体如下:
前台表单代码
1
2
3
4
|
< form name = "form1" method = "post" action = "admin_upfile.php" enctype = "multipart/form-data" > < input type = "file" name = "pic" > < input type = "submit" name = "Submit" value = "开始上传" class = "button" > </ form > |
后端php代码
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
|
<?php //这里上传 $upsize判断上传文件的大小 $uppath = "/attached/" ; //文件上传路径 //转换根目录的路径 if ( strpos ( $uppath , "/" ) == 0) { $i = 0; $thpath = $_SERVER [ "SCRIPT_NAME" ]; $thpath = substr ( $thpath , 1, strlen ( $thpath )); while ( strripos ( $thpath , "/" ) !== false) { $thpath = substr ( $thpath , strpos ( $thpath , "/" ) + 1, strlen ( $thpath )); $i = ++ $i ; } $pp = "" ; for ( $j = 0; $j < $i ; ++ $j ) { $pp .= "../" ; } $uppaths = $pp . substr ( $uppath , 1, strlen ( $thpath )); } $filename = date ( "y-m-d" ); if ( is_dir ( $uppaths . $filename ) != TRUE) mkdir ( $uppaths . $filename , 0777); $f = $_FILES [ 'pic' ]; if ( $f [ "type" ] != "image/gif" && $f [ "type" ] != "image/pjpeg" && $f [ "type" ] != "image/jpeg" && $f [ "type" ] != "image/x-png" ) { echo "<script>alert('只能上传图片格式的文件');window.close()</script>" ; return false; } //获得文件扩展名 $temp_arr = explode ( "." , $f [ "name" ]); $file_ext = array_pop ( $temp_arr ); $file_ext = trim( $file_ext ); $file_ext = strtolower ( $file_ext ); //新文件名 $new_file_name = md5( date ( "YmdHis" )) . '.' . $file_ext ; echo $dest = $uppaths . $filename . "/" . date ( "ymdhis" ) . "_" . $new_file_name ; //设置文件名为日期加上文件名避免重复 上传目录 echo $dest1 = $uppath . $filename . "/" . date ( "ymdhis" ) . "_" . $new_file_name ; //设置文件名为日期加上文件名避免重复 $r = move_uploaded_file( $f [ 'tmp_name' ], $dest ); ?> |
希望本文所述对大家的php程序设计有所帮助。