當前位置:首頁 » 文件傳輸 » php上傳文件代碼
擴展閱讀
webinf下怎麼引入js 2023-08-31 21:54:13
堡壘機怎麼打開web 2023-08-31 21:54:11

php上傳文件代碼

發布時間: 2022-02-24 23:38:33

⑴ 求php文件上傳代碼

上傳的同時 是不可能被確認的 你只有先把文件放到一個目錄中 管理員通過以後再移動到另外的目錄里去 或者文件顯示給用戶的時候 是通過資料庫存儲信息來進行確認的 也就是說 資料庫中標識的沒有通過的文件 則不可以被顯示給普通用戶。
至於文件的名稱 文件的大小 和擴展什麼的 都是可以讀取 並保存起來的

⑵ 求PHP網頁上傳文件代碼.

自定義文件上傳函數


<?php
/**
* 文件上傳
*/
/**
* 文件上傳函數
* @param $name string 表單上傳框的name值
* @param $file_arr array 上傳文件的類型限制
* @param $filesize int 上傳文件限制其大小
* @param $path string 文件的保存路徑
* @return string 成功返回 "上傳成功及文件名"
*/
function uploads($name,$file_arr=array('jpg','png','gif','JPG','GIF','PNG'),$filesize=3145728,$path='uploads'){
//1、檢測文件的錯誤信息,如果是0 就允許上傳(保存)
$err=$_FILES[$name]['error'];
if($err>0){
if($err==1){
return '上傳的文件超過了 php.ini 中 upload_max_filesize 選項限制的值。';
}elseif($err==2){
return '上傳文件的大小超過了 HTML 表單中 MAX_FILE_SIZE 選項指定的值。 ';
}elseif($err==3){
return '文件只有部分被上傳。';
}elseif($err==4){
return'沒有文件上傳';
}elseif($err>=5){
return '其他錯誤';
}
}
//2、檢測文件的類型,是否是我們需要的(png、gif、jpg)
$pre=pathinfo($_FILES[$name]['name'],PATHINFO_EXTENSION);
if(!in_array($pre,$file_arr)){
return '上傳的文件類型不符';
}
//3、檢測文件大小
if($_FILES[$name]['size']>$filesize){
return '上傳的文件太大';
}
//4、保存文件
$file_name=date('YmdHis',time()).mt_rand(1000,9999).'.'.$pre;
if(is_uploaded_file($_FILES[$name]['tmp_name'])){
move_uploaded_file($_FILES[$name]['tmp_name'], $path."/".$file_name);
return '上傳成功|'.$file_name;
}else{
return "文件上傳失敗!";
}

}
?>

⑶ PHP如何上傳文件

$f_type=strtolower("swf,rar,jpg,zip,7z,iso,gif,exe,rmvb");//設置可上傳的文件類型

if (!is_uploaded_file($file) || ($_FILES['photoupload']['size'] > 20000 * 1024 * 1024) )
{
$error = 'Please upload only files smaller than 2Mb!';
}
$f_name=$_FILES['photoupload']['name'];
$tmp_type=substr(strrchr($f_name,"."),1);//獲取文件擴展名
$tmp_type=strtolower($tmp_type);
if(!stristr($f_type,$tmp_type)){
$error="對不起,不能上傳格式為:".$tmp_type."的文件:".$f_name;

}
if(move_uploaded_file($_FILES['photoupload']['tmp_name'], $uploadfile)){
$result['result'] = 'success';
$result['size'] =$f_name."文件上傳成功";
}
else{
$result['result'] = 'failed';
$result['error'] =$f_name."上傳失敗";
}

⑷ php上傳文件代碼,能用的代碼

<?php
$uptypes=array('image/jpg', //上傳文件類型列表
'image/jpeg',
'image/png',
'image/pjpeg',
'image/gif',
'image/bmp',
'image/x-png');
$max_file_size=5000000; //上傳文件大小限制, 單位BYTE
$destination_folder="upload/"; //上傳文件路徑
$watermark=1; //是否附加水印(1為加水印,其他為不加水印);
$watertype=1; //水印類型(1為文字,2為圖片)
$waterposition=1; //水印位置(1為左下角,2為右下角,3為左上角,4為右上角,5為居中);
$waterstring="newphp.site.cz"; //水印字元串
$waterimg="xplore.gif"; //水印圖片
$imgpreview=1; //是否生成預覽圖(1為生成,其他為不生成);
$imgpreviewsize=1/2; //縮略圖比例
?>
<html>
<head>
<title>M4U BLOG - fywyj.cn</title>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<style type="text/css">body,td{font-family:tahoma,verdana,arial;font-size:11px;line-height:15px;background-color:white;color:#666666;margin-left:20px;}
strong{font-size:12px;}
aink{color:#0066CC;}
a:hover{color:#FF6600;}
aisited{color:#003366;}
a:active{color:#9DCC00;}
table.itable{}
td.irows{height:20px;background:url("index.php?i=dots" repeat-x bottom}</style>
</head>
<body>
<center><form enctype="multipart/form-data" method="post" name="upform">
上傳文件: <br><br><br>
<input name="upfile" type="file" style="width:200;border:1 solid #9a9999; font-size:9pt; background-color:#ffffff" size="17">
<input type="submit" value="上傳" style="width:30;border:1 solid #9a9999; font-size:9pt; background-color:#ffffff" size="17"><br><br><br>
允許上傳的文件類型為:jpg|jpeg|png|pjpeg|gif|bmp|x-png|swf <br><br>
<a href="index.php">返回</a>
</form>

<?php
if ($_SERVER['REQUEST_METHOD'] == 'POST')
{
if (!is_uploaded_file($_FILES["upfile"][tmp_name]))
//是否存在文件
{
echo "<font color='red'>文件不存在!</font>";
exit;
}

$file = $_FILES["upfile"];
if($max_file_size < $file["size"])
//檢查文件大小
{
echo "<font color='red'>文件太大!</font>";
exit;
}

if(!in_array($file["type"], $uptypes))
//檢查文件類型
{
echo "<font color='red'>只能上傳圖像文件或Flash!</font>";
exit;
}

if(!file_exists($destination_folder))
mkdir($destination_folder);

$filename=$file["tmp_name"];
$image_size = getimagesize($filename);
$pinfo=pathinfo($file["name"]);
$ftype=$pinfo[extension];
$destination = $destination_folder.time().".".$ftype;
if (file_exists($destination) && $overwrite != true)
{
echo "<font color='red'>同名文件已經存在了!</a>";
exit;
}

if(!move_uploaded_file ($filename, $destination))
{
echo "<font color='red'>移動文件出錯!</a>";
exit;
}

$pinfo=pathinfo($destination);
$fname=$pinfo[basename];
echo " <font color=red>已經成功上傳</font><br>文件名: <font color=blue>".$destination_folder.$fname."</font><br>";
echo " 寬度:".$image_size[0];
echo " 長度:".$image_size[1];
if($watermark==1)
{
$iinfo=getimagesize($destination,$iinfo);
$nimage=imagecreatetruecolor($image_size[0],$image_size[1]);
$white=imagecolorallocate($nimage,255,255,255);
$black=imagecolorallocate($nimage,0,0,0);
$red=imagecolorallocate($nimage,255,0,0);
imagefill($nimage,0,0,$white);
switch ($iinfo[2])
{
case 1:
$simage =imagecreatefromgif($destination);
break;
case 2:
$simage =imagecreatefromjpeg($destination);
break;
case 3:
$simage =imagecreatefrompng($destination);
break;
case 6:
$simage =imagecreatefromwbmp($destination);
break;
default:
die("<font color='red'>不能上傳此類型文件!</a>");
exit;
}

image($nimage,$simage,0,0,0,0,$image_size[0],$image_size[1]);
imagefilledrectangle($nimage,1,$image_size[1]-15,80,$image_size[1],$white);

switch($watertype)
{
case 1: //加水印字元串
imagestring($nimage,2,3,$image_size[1]-15,$waterstring,$black);
break;
case 2: //加水印圖片
$simage1 =imagecreatefromgif("xplore.gif");
image($nimage,$simage1,0,0,0,0,85,15);
imagedestroy($simage1);
break;
}

switch ($iinfo[2])
{
case 1:
//imagegif($nimage, $destination);
imagejpeg($nimage, $destination);
break;
case 2:
imagejpeg($nimage, $destination);
break;
case 3:
imagepng($nimage, $destination);
break;
case 6:
imagewbmp($nimage, $destination);
//imagejpeg($nimage, $destination);
break;
}

//覆蓋原上傳文件
imagedestroy($nimage);
imagedestroy($simage);
}

if($imgpreview==1)
{
echo "<br>圖片預覽:<br>";
echo "<a href=\"".$destination."\" target='_blank'><img src=\"".$destination."\" width=".($image_size[0]*$imgpreviewsize)." height=".($image_size[1]*$imgpreviewsize);
echo " alt=\"圖片預覽:\r文件名:".$destination."\r上傳時間:\" border='0'></a>";
}
}
?>
</center>
</body>
</html>

絕對好用!!!!給分吧

⑸ 誰有文件上傳的PHP後台代碼

<?php
$up=$_FILES["files"];
if($up["error"]>0){
//獲取錯誤信息
switch($up['error']){
case 1:
$info="<h2>上傳的文件超過了php.ini中upload_max_filesize選項限制的值</h2>";
break;
case 2:
$info="上傳的文件超過了html中MAX_FILE_SIZE選項指定的值";
你如果還有不明白的,可以去後盾人看看相關視頻教材,多看幾遍不就會了,我就是這樣的。

⑹ php多文件上傳實現代碼

這篇文章主要介紹了php多文件上傳實現代碼,需要的朋友可以參考下
index_uploads.php

代碼如下:
<html>
<head>

<meta
charset="utf-8">

<title>index_uploads</title>
</head>
<body>

<form
action="uploads.php"
method="post"
enctype="multipart/form-data">

<input
type="file"
name="file[]">

<br>

<input
type="file"
name="file[]">

<br>

<input
type="submit"
value="uploads">

</form>
</body>
</html>

uploads.php

代碼如下:
<?php

header("content-type:text/html;charset=utf-8");

echo
"<pre>";

print_r($_FILES);

echo
"</pre>";

$count
=
count($_FILES['file']['name']);

for
($i
=
0;
$i
<
$count;
$i++)
{

$tmpfile
=
$_FILES['file']['tmp_name'][$i];

$filefix
=
array_pop(explode(".",
$_FILES['file']['name'][$i]));

$dstfile
=
"uploads/files/".time()."_".mt_rand().".".$filefix;

if
(move_uploaded_file($tmpfile,
$dstfile))
{

echo
"<script>alert('succeed!');window.location.href='index_uploads.php';</script>";

}
else
{

echo
"<script>alert('fail!');window.location.href='index_uploads.php';</script>";

}

}

核心:<1>上傳首頁中input的name屬性是這么設置的。

<2>用while循環上傳多文件。

⑺ 用php怎麼上傳文件到伺服器,並用阿帕奇伺服器記錄文件名稱(求完整代碼)

<html>
<form action="a.php" method="post" enctype="multipart/form-data">
<input type="file" name="file">
</form>
</html>

a.php
<?php

$file=$_POST['file'];
//判斷文件是否上傳成功
if(is_uploaded_file($file['tmp_name'])){
//apache文件上傳時臨時儲存路徑,移動到自定義路徑
$upload_file=$file['tmp_name'];
//下面是你伺服器儲存文件的路徑,可以自定義
$move_to_file=$_SERVER['DOCUMENT.ROOT'].'/path/'.$file['name'];
//判斷是否移動成功
if(move_uploaded_file($upload_file,$move_to_file)){
echo "上傳文件成功";
}else{
echo "上傳失敗";
}
}else{
echo "上傳失敗..請檢查伺服器。";
}

應該就是這樣吧,當然也可以用$_FILE['file']接收。還有問題可以繼續問。

⑻ 求一段php上傳任意文件的代碼

PHP 文件上傳 是通過 PHP,可以把文件上傳到伺服器。

1首先創建一個文件上傳表單

允許用戶從表單上傳文件是非常有用的。

請看下面這個供上傳文件的 HTML 表單:

<html>
<body>

<form action="upload_file.php" method="post"
enctype="multipart/form-data">
<label for="file">Filename:</label>
<input type="file" name="file" id="file" />
<br />
<input type="submit" name="submit" value="Submit" />
</form>

</body>
</html>

請留意如下有關此表單的信息:

<form> 標簽的 enctype 屬性規定了在提交表單時要使用哪種內容類型。在表單需要二進制數據時,比如文件內容,請使用 "multipart/form-data"。

<input> 標簽的 type="file" 屬性規定了應該把輸入作為文件來處理。舉例來說,當在瀏覽器中預覽時,會看到輸入框旁邊有一個瀏覽按鈕。

注釋:允許用戶上傳文件是一個巨大的安全風險。請僅僅允許可信的用戶執行文件上傳操作。

2:創建上傳腳本

"upload_file.php" 文件含有供上傳文件的代碼:

<?php
if ($_FILES["file"]["error"] > 0)
{
echo "Error: " . $_FILES["file"]["error"] . "<br />";
}
else
{
echo "Upload: " . $_FILES["file"]["name"] . "<br />";
echo "Type: " . $_FILES["file"]["type"] . "<br />";
echo "Size: " . ($_FILES["file"]["size"] / 1024) . " Kb<br />";
echo "Stored in: " . $_FILES["file"]["tmp_name"];
}
?>

通過使用 PHP 的全局數組 $_FILES,你可以從客戶計算機向遠程伺服器上傳文件。

第一個參數是表單的 input name,第二個下標可以是 "name", "type", "size", "tmp_name" 或 "error"。就像這樣:

$_FILES["file"]["name"] - 被上傳文件的名稱
$_FILES["file"]["type"] - 被上傳文件的類型
$_FILES["file"]["size"] - 被上傳文件的大小,以位元組計
$_FILES["file"]["tmp_name"] - 存儲在伺服器的文件的臨時副本的名稱
$_FILES["file"]["error"] - 由文件上傳導致的錯誤代碼

這是一種非常簡單文件上傳方式。不需要考慮文件的上傳格式。

⑼ PHP上傳圖片代碼

兄弟用這個吧
我不知道你的資料庫是什麼樣的就隨便弄了一個:
希望對你有用,名字採用時間的格式命名的:
<?
include("../inc.php");

function getname($exname){
$dir = "upload/";
//目錄名,可以自己改
$i=1;
//文件的名稱前綴,本例默認從1開始依次加加
$showtime=date("YmdHis");
if(!is_dir($dir)){
mkdir($dir,0777);
//如果不存在此目錄,則創建,請保證您有相應的許可權
}
while(true){
if(!is_file($dir.$showtime.".".$exname)){
$name=$showtime.".".$exname;
break;
}
}
return $dir.$name;
}
$max=$_POST["MAX_FILE_SIZE"];

if($max<($_FILES['upfile']['size']))
echo "<script> alert('文件大於2000000b!');history.back();</script>";
$exname=strtolower(substr($_FILES['upfile']['name'],(strrpos($_FILES['upfile']['name'],'.')+1)));//返迴文件後綴名
if($exname=="jpg"||$exname=="bmp"||$exname=="jpeg"||$exname=="gif"){
$uploadfile = getname($exname);
$add=$uploadfile;
$name=$_POST["name"];
$time=$_POST["time"];
if($name=="")
echo "<script> alert('標題不能為空!');history.back();</script>";
else
{
$sql = "INSERT INTO `web`.`pto` (
`ID` ,
`name` ,
`add` ,
`time`
)
VALUES (
null, '".$name."', '".$add."', '".$time."'
)";
mysql_query($sql) or die("寫失敗");

if (move_uploaded_file($_FILES['upfile']['tmp_name'], $uploadfile))
{
echo "<script> alert('文件上傳成功!');window.location.href('pto.php');</script>";
}else {
echo "<script> alert('文件上傳失敗!');history.back();</script>";
}
} }
else
echo "<script> alert('文件格式錯誤!');history.back();</script>";
?>