Register Register Member Login Member Login Member Login Forgot Password ??
PHP , ASP , ASP.NET, VB.NET, C#, Java , jQuery , Android , iOS , Windows Phone
 

Registered : 109,027

HOME > PHP > PHP Forum > การอัพโหลดไฟล์หลายไฟล์ ช่วยเข้ามาดูโค็ตหน่อยครับ ขอบคุณมาก



 

การอัพโหลดไฟล์หลายไฟล์ ช่วยเข้ามาดูโค็ตหน่อยครับ ขอบคุณมาก

 



Topic : 070408



โพสกระทู้ ( 368 )
บทความ ( 0 )



สถานะออฟไลน์




Code (PHP)
for($i=0;$i<count($_FILES["filUpload"]["name"]);$i++)
	{
		if($_FILES["filUpload"]["name"][$i] != "")
		{
			if(copy($_FILES["filUpload"]["tmp_name"][$i],"myfile/".$_FILES["filUpload"]["name"][$i]))
			{
				//*** Insert Record ***//
				$strSQL = "INSERT INTO files ";
				$strSQL .="(FilesName) VALUES ('".$_FILES["filUpload"]["name"][$i]."')";
				$objQuery = mysql_query($strSQL);
			}
		}
	}


ผมต้องการโค็ตด้าดนบนนี้อ่า มาใส่ในโค็ต ด้านล่างนี้ เป็น upload file หลายไฟล์ ทำไงหรอครับ

Code (PHP)
<?php

	if(isset($_POST["send"])){
			if(validate_form($err)){
				$documentid = $_POST["docid"];
				$docid = explode("-",$documentid);
	    		process_form($docid);
			}else{
				echo $err;
			}
	}else
     	$documentid = $_GET['b2'];



function validate_form(&$err) {
	$err = "";
	if (!is_uploaded_file($_FILES['userfile']['tmp_name'])) {
		$err .= "ส่งไฟล์ไม่สำเร็จ เหตุผลคือ ";
		
		if (($_FILES['userfile']['error'] == UPLOAD_ERR_INN_SIZE) or
			($_FILES['userfile']['error'] == UPLOAD_ERR_FORM_SIZE))
		   $err .= "ไฟล์มีขนาดใหญ่กว่าที่กำหนด<br>";
		   
		elseif ($_FILES['userfile']['error'] == UPLOAD_ERR_PARTIAL)
		   $err .= "ข้อมูลของไฟล์ถูกส่งมาไม่ครบ<br>";
		   
		elseif ($_FILES['userfile']['error'] == UPLOAD_ERR_NO_FILE)
		   $err .= "คุณไม่ได้เลือกไฟล์ที่จะส่ง<br>";
	}
	else {
		define ("MAX_SIZE", 500000);
		if ($_FILES['userfile']['size'] > MAX_SIZE)
		$err .= "ส่งไฟล์สำเร็จ แต่ไฟล์มีขนาดใหญ่กว่าที่กำหนด<br>";
		
	if (($_FILES['userfile']['type'] != "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet") and
		($_FILES['userfile']['type'] != "application/vnd.openxmlformats-officedocument.wordprocessingml.document") and
		($_FILES['userfile']['type'] != "application/vnd.ms-excel") and
		($_FILES['userfile']['type'] != "application/msword") and
		($_FILES['userfile']['type'] != "application/pdf") and
		($_FILES['userfile']['type'] != "application/vnd.ms-excel.sheet.macroEnabled.12"))
		$err .="ส่งไฟล์สำเร็จ แต่ไฟล์ที่ส่งมาไม่ใช่รูปภาพแบบ GIF หรือ JPEG<br>";
	}
	
	if ($err)
		return FALSE;
	else
		return TRUE;
}



function process_form(&$docid) {
	echo "ได้รับไฟล์ {$_FILES['userfile']['name']} แล้ว<br>";
	echo "ขนาดไฟล์ {$_FILES['userfile']['size']} ไบต์<br>";
	echo "MIME Type {$_FILES['userfile']['type']}<br><br>";
	$ss = $_FILES['userfile']['name'];
	
	
require('conn_mysql.php');
$documentid = $_POST["docid"];

$query4 = "update documentstatus set status = 'Wait for Verify (Doc)' WHERE documentid='$documentid'";
$result = mysql_query($query4) or die ("Query failed");
if($result)
{
	mysql_close($conn);
}
else{
}

    $filenameUTF8 = $_FILES['userfile']['name'];
	$filenameW874 = iconv('UTF-8','windows-874',$filenameUTF8);
    $test5 = "processing";

	
	$dest = "isodoc/". $docid[0] . "/" . $docid[1]  .  "/" . $docid[2] . "/" . $docid[3]. "/" . $test5 . "/" .$filenameW874 ;
	$path = "isodoc/". $docid[0] . "/" . $docid[1]  .  "/" . $docid[2] . "/" . $docid[3]. "/" . $test5 . "/";
	require('conn_mysql.php');

$documentid = $_POST["docid"];


$query = "update masterlist set filepath='$path',filename='$ss' WHERE documentid='$documentid'";
$result = mysql_query($query) or die ("Query failed");
if($result)
{
	mysql_close($conn);
}
else{
}
	if(!is_dir("isodoc/". $docid[0] . "/" . $docid[1] .  "/")){
		mkdir("isodoc/". $docid[0] . "/" . $docid[1] .  "/");
	}
	
	if(!is_dir("isodoc/". $docid[0] . "/" . $docid[1]  .  "/" . $docid[2] . "/")){
		mkdir("isodoc/". $docid[0] . "/" . $docid[1]  .  "/" . $docid[2] . "/");
	}
	
	if(!is_dir("isodoc/". $docid[0] . "/" . $docid[1] .  "/" . $docid[2]. "/" . $docid[3]. "/")){
		mkdir("isodoc/". $docid[0] . "/" . $docid[1] .  "/" . $docid[2] . "/" . $docid[3]. "/");
	}
	
	if(!is_dir("isodoc/". $docid[0] . "/" . $docid[1]  .  "/" . $docid[2] . "/" . $docid[3]. "/" . $test5 . "/")){
		mkdir("isodoc/". $docid[0] . "/" . $docid[1]  .  "/" . $docid[2] . "/" . $docid[3]. "/" . $test5 . "/");
	}
	
	if(move_uploaded_file($_FILES['userfile']['tmp_name'], $dest)){
		echo "ย้ายไฟล์ไปยังตำแหน่งปลายทางที่จัดเตรียมไว้ในเซิร์ฟเวอร์แล้ว<br>";
	} 
}
?>


ในโค็ตจะมีอยู่ 2 ฟังก์ชั่น คือ
validate_form ไว้ดักค่าต่างๆตอนอัฟโหลด
process_form ไว้อัพโหลดไฟล์



Tag : PHP







Move To Hilight (Stock) 
Send To Friend.Bookmark.
Date : 2011-12-15 16:11:52 By : beer656 View : 920 Reply : 2
 

 

No. 1



โพสกระทู้ ( 74,058 )
บทความ ( 838 )

สมาชิกที่ใส่เสื้อไทยครีเอท

สถานะออฟไลน์
Twitter Facebook

Code (PHP)
	if(isset($_POST["send"])){
			if(validate_form($err)){
				$documentid = $_POST["docid"];
				$docid = explode("-",$documentid);
	    		process_form($docid);
			}else{
				echo $err;
			}
	}else
     	$documentid = $_GET['b2'];


น่าจะแทรกครอบตัวนี้ครับ หรือไม่ก็เขียนใหม่น่าจะง่ายกกว่าครับ






แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2011-12-15 17:11:17 By : webmaster
 


 

No. 2



โพสกระทู้ ( 368 )
บทความ ( 0 )



สถานะออฟไลน์


Code (PHP)
<?php

	if(isset($_POST["send"])){
		
			if(validate_form($err,$i)){
				for($i=0;$i<count($_FILES["userfile"]["name"]);$i++){
				$documentid = $_POST["docid"];
				$docid = explode("-",$documentid);
	    		process_form($docid,$i);
				}
			}else{
				echo $err;
			
		}
	}else
     	$documentid = $_GET['b2'];



function validate_form($err,$i) {
	$err = "";
	if (!is_uploaded_file($_FILES['userfile']['tmp_name'][$i])) {
		$err .= "ส่งไฟล์ไม่สำเร็จ เหตุผลคือ ";
		
		if (($_FILES['userfile']['error'][$i] == UPLOAD_ERR_INN_SIZE) or
			($_FILES['userfile']['error'][$i] == UPLOAD_ERR_FORM_SIZE))
		   $err .= "ไฟล์มีขนาดใหญ่กว่าที่กำหนด<br>";


ผมเขียนแบบนี้ มันยังไม่ ดัก ค่าเลยครับ ช่วยดูให้หน่อยว่าผิดตรงไหน
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2011-12-15 17:27:49 By : beer656
 

   

ค้นหาข้อมูล


   
 

แสดงความคิดเห็น
Re : การอัพโหลดไฟล์หลายไฟล์ ช่วยเข้ามาดูโค็ตหน่อยครับ ขอบคุณมาก
 
 
รายละเอียด
 
ตัวหนา ตัวเอียง ตัวขีดเส้นใต้ ตัวมีขีดกลาง| ตัวเรืองแสง ตัวมีเงา ตัวอักษรวิ่ง| จัดย่อหน้าอิสระ จัดย่อหน้าชิดซ้าย จัดย่อหน้ากึ่งกลาง จัดย่อหน้าชิดขวา| เส้นขวาง| ขนาดตัวอักษร แบบตัวอักษร
ใส่แฟลช ใส่รูป ใส่ไฮเปอร์ลิ้งค์ ใส่อีเมล์ ใส่ลิ้งค์ FTP| ใส่แถวของตาราง ใส่คอลัมน์ตาราง| ตัวยก ตัวห้อย ตัวพิมพ์ดีด| ใส่โค้ด ใส่การอ้างถึงคำพูด| ใส่ลีสต์
smiley for :lol: smiley for :ken: smiley for :D smiley for :) smiley for ;) smiley for :eek: smiley for :geek: smiley for :roll: smiley for :erm: smiley for :cool: smiley for :blank: smiley for :idea: smiley for :ehh: smiley for :aargh: smiley for :evil:
Insert PHP Code
Insert ASP Code
Insert VB.NET Code Insert C#.NET Code Insert JavaScript Code Insert C#.NET Code
Insert Java Code
Insert Android Code
Insert Objective-C Code
Insert XML Code
Insert SQL Code
Insert Code
เพื่อความเรียบร้อยของข้อความ ควรจัดรูปแบบให้พอดีกับขนาดของหน้าจอ เพื่อง่ายต่อการอ่านและสบายตา และตรวจสอบภาษาไทยให้ถูกต้อง

อัพโหลดแทรกรูปภาพ

Notice

เพื่อความปลอดภัยของเว็บบอร์ด ไม่อนุญาติให้แทรก แท็ก [img]....[/img] โดยการอัพโหลดไฟล์รูปจากที่อื่น เช่นเว็บไซต์ ฟรีอัพโหลดต่าง ๆ
อัพโหลดแทรกรูปภาพ ให้ใช้บริการอัพโหลดไฟล์ของไทยครีเอท และตัดรูปภาพให้พอดีกับสกรีน เพื่อความโหลดเร็วและไฟล์ไม่ถูกลบทิ้ง

   
  เพื่อความปลอดภัยและการตรวจสอบ กระทู้ที่แทรกไฟล์อัพโหลดไฟล์จากที่อื่น อาจจะถูกลบทิ้ง
 
โดย
อีเมล์
บวกค่าให้ถูก
<= ตัวเลขฮินดูอารบิก เช่น 123 (หรือล็อกอินเข้าระบบสมาชิกเพื่อไม่ต้องกรอก)







Exchange: นำเข้าสินค้าจากจีน, Taobao, เฟอร์นิเจอร์, ของพรีเมี่ยม, ร่ม, ปากกา, power bank, แฟลชไดร์ฟ, กระบอกน้ำ

Load balance : Server 01
ThaiCreate.Com Logo
© www.ThaiCreate.Com. 2003-2024 All Rights Reserved.
ไทยครีเอทบริการ จัดทำดูแลแก้ไข Web Application ทุกรูปแบบ (PHP, .Net Application, VB.Net, C#)
[Conditions Privacy Statement] ติดต่อโฆษณา 081-987-6107 อัตราราคา คลิกที่นี่