今天主要學(xué)習(xí)了PHP上傳文件并將文件地址和文件名寫入數(shù)據(jù)庫,現(xiàn)在簡單的寫了個(gè),能用,簡單的限制條件都實(shí)現(xiàn)了,個(gè)人覺得還是可以的,現(xiàn)在把源代碼貼出來,高手多多指教哦!
<?php/******************************************************************************參數(shù)說明:$max_file_size : 上傳文件大小限制, 單位BYTE$destination_folder : 上傳文件路徑******************************************************************************/ include "conn.php";//上傳文件類型列表$uptypes=array( 'image/jpg', 'image/jpeg', 'image/png', 'image/pjpeg', 'image/gif', 'image/bmp', 'application/vnd.openxmlformats-html' target='_blank'>officedocument.wordprocessingml.document', 'application/pdf', 'application/msword', 'image/x-png');$max_file_size=2000000; //上傳文件大小限制, 單位BYTE$destination_folder="up1/"; //上傳文件路徑?><html><head><title>文件上傳程序</title><style type="text/css"><!--body{ font-size: 9pt;}input{ background-color: #66CCFF; border: 1px inset #CCCCCC;}--></style></head><body><form enctype="multipart/form-data" method="post" name="upform"> 上傳文件: <input name="upfile" type="file"> <input type="submit" value="上傳"><br> 允許上傳的文件類型為:<?php echo implode(',',$uptypes)?></form><?phpif ($_SERVER['REQUEST_METHOD'] == 'POST'){ if (!is_uploaded_file($_FILES["upfile"]['tmp_name'])) //是否存在文件 { echo "您還沒有選擇文件!"; exit; } $file = $_FILES["upfile"]; if($max_file_size < $file["size"]) //檢查文件大小 { echo "您選擇的文件太大了!"; exit; } if(!in_array($file["type"], $uptypes)) //檢查文件類型 { echo "文件類型不符!".$file["type"]; 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 "同名文件已經(jīng)存在了"; exit; } if(!move_uploaded_file ($filename, $destination)) { echo "移動(dòng)文件出錯(cuò)"; exit; } $pinfo=pathinfo($destination); $fname=$pinfo['basename']; echo " <font color=red>已經(jīng)成功上傳</font><br>完整地址: <font color=blue>http://localhost/new/".$destination_folder.$fname."</font><br>"; echo "<br> 大小:".$file["size"]." bytes"; echo '<br>'; //將數(shù)據(jù)插入到數(shù)據(jù)庫中 $dizhi = "http://localhost/new/"."$destination_folder"."$fname"; $name = $file['name']; $sql = "insert into `excel`(`id`,`dizhi`,`name`) values ('NULL','$dizhi','$name')"; mysql_query($sql); echo "數(shù)據(jù)插入成功";}?></body>
這個(gè)是在本機(jī)測試的,現(xiàn)在還在學(xué)習(xí)階段,等學(xué)習(xí)好了,就要派上用場了,現(xiàn)在很想把這個(gè)好好學(xué)學(xué)啊,但是感覺難啊!
PHP編程鄭重聲明:本文版權(quán)歸原作者所有,轉(zhuǎn)載文章僅為傳播更多信息之目的,如作者信息標(biāo)記有誤,請第一時(shí)間聯(lián)系我們修改或刪除,多謝。
新聞熱點(diǎn)
疑難解答
圖片精選