รบกวนช่วยดูโค้ดอัพโหลดไฟล์หลายไฟล์พร้อมกัน แต่ชื่อไฟล์ที่แสดงไม่ตรงตามความต้องการ

ถาม-ตอบ แนะนำไอเดียว โค้ดตัวอย่าง แนวทาง วิธีแก้ปัญหา รบกวนช่วยดูโค้ดอัพโหลดไฟล์หลายไฟล์พร้อมกัน แต่ชื่อไฟล์ที่แสดงไม่ตรงตามความต้องการ

รบกวนช่วยดูโค้ดอัพโหลดไฟล์หลายไฟล์พร้อมกัน แต่ชื่อไฟล์ที่แสดงไม่ตรงตามความต้องการ
หน้าแสดงข้อมูล show_asbuit.php
<form action="show_asbuit.php" method="post">
		<table align="center" width="70%"><tr>
 			<td height="34" align="right">ZONE :</td>
   			 <td><label for="zone_asbuit"></label>
    <select name="zone_asbuit" id="zone_asbuit">
      <option selected="selected">--กรุณาเลือก--</option>
      <option value="1">1</option>
      <option value="2">2</option>
      <option value="3">3</option>
      <option value="4">4</option>
      <option value="5">5</option>
      <option value="6">6</option>
      <option value="7">7</option>
      <option value="8">8</option>
      <option value="9">9</option>
      <option value="10">10</option>
      </select>
      </td>
       <td height="34" align="right">จังหวัด :</td>
    <td>
    <label for="pro_id"></label>
     <select name="pro_id" id="pro_id">
     <option value="">--เลือกจังหวัด--</option>
  <?   $strDefault=$row_insert['pro_id'];
		$strSQL = "SELECT * FROM province ORDER BY pro_id ASC";
		$objQuery = mysql_query($strSQL);
		while($objResuut = mysql_fetch_array($objQuery))
		{ if($strDefault == $objResuut["pro_id"])
			{ $sel = "selected"; }
			else{ $sel = ""; }
		?>
		<option value="<?=$objResuut["pro_id"];?>" <?=$sel;?>><?=$objResuut["pro_id"]." - ".$objResuut["pro_name"];?></option>
		<? } ?>
     </select>
      </td>
      <td>ค้นหารายละเอียดเอกสาร : </td>
		<td><input type="text" name="search" id="search"  value="<? echo $asbuit_description; ?>" ; /></td>
    	<td><input name="find" type="submit" id="find" value="ค้นหา"  /></center></td></tr></table>
  <table width="80%" align="center">
  <tr>
      <td width="65%" align="right"><div align="right">[ <a href="show_core.php"> เอกสารแบบ Core Assignment</a> ][</div></td>
      <td width="15%"><div align="left"><a href="asbuit.php"> เพิ่มเอกสาร Asbuit</a> ]</div></td>
</tr></table>
	<table border="2" cellspacing="0" cellpadding="2" align="center" width="70%">
   <tr>
    <th  bgcolor="#FFFF33" width="5%" >ZONE</th>
    <th  bgcolor="#FFFF33" width="8%" >จังหวัด</th>
    <th  bgcolor="#FFFF33" width="20%">เอกสาร Asbuit </th>
    <th  bgcolor="#FFFF33" width="15%">ไฟล์เอกสาร Asbuit </th>
    <th  bgcolor="#FFFF33" width="8%" >วันที่</th>   
    <th  bgcolor="#FFFF33" width="18%" >รายละเอียด</th>
    <th bgcolor="#FFFF33" width="4%" >แก้ไข l ลบ</th>
    </tr>
  <?php  			
  		if(isset($_POST['search']) ) {
			$search = $_POST['search'];
			}else{
				$search = '';
			}
				$strQuery = "SELECT * FROM asbuit WHERE `show` =  'y' AND asbuit_description LIKE '%" . $search . "%'";
				if(isset($_POST['zone_asbuit']) && is_numeric($_POST['zone_asbuit']) ) {
				$strQuery .= " AND zone_asbuit = " . $_POST['zone_asbuit'];	
				}
				if(isset($_POST['pro_id']) && is_numeric($_POST['pro_id']) ) {
				$strQuery .= " AND pro_id = " . $_POST['pro_id'];	
				}
			 $strQuery .= " ORDER BY ABS(zone_asbuit) ASC";
			//echo $strQuery . "</br>";
			$check_log = mysql_query($strQuery) or die (mysql_error());        
			$num = mysql_num_rows($check_log);
				if($num <=0) {     
				} 
				$n=0;//ให้ค่า n= 0
 		 while ($objResult = mysql_fetch_array($check_log)){ 
		 ?>
  <tr>
    <td align="center"><?=$objResult["zone_asbuit"]; ?></td>
    <td align="center"><?=$objResult["pro_name"]; ?></td>
    <td align="center"><?=$objResult["asbuit_name"]; ?></td>
    <td><center><a href="upload/technical/asbuit/<?php echo $objResult["file_asbuit"];?>"><?php echo $objResult["file_asbuit"];?></a></center></td>
    <td align="center"><?=$objResult["date_asbuit_up"]; ?></td>
    <td align="center"><?=$objResult["asbuit_description"]; ?></td>
    <td width="8%" align="center"><a href="add_asbuit.php?do=edit&sid=<?php echo $objResult["asbuit_id"]; ?>">แก้ไข</a> | <a href="show_asbuit.php?do=delete&sid=<?php echo $objResult["asbuit_id"]; ?>">ลบ</a></td>
  </tr>
  <?php } ?>
</table>
</form>


หน้าเพิ่ม อัพโหลดไฟล์ asbuit.php
<?php
session_start();
header('Content-Type: text/html; charset=UTF-8');
include("db/connect.php");//เรียกใช้ไฟล์connect.php
error_reporting (E_ALL ^ E_NOTICE); //ดัก noticeออกไป
if($_POST["Save"]){
	$date_asbuit_up = date("Y-m-d");
	//select pro_name
	$sql_pname = "SELECT pro_name  as  province_name   FROM province WHERE pro_id = '$pro_id' ";
	$db_query_pname=mysql_query($sql_pname);
	$result_pname = mysql_fetch_array($db_query_pname);
	$province_name=$result_pname[province_name];
	
	$file_asbuit='".$_FILES["file_asbuit"]["name"][$i]."';
	$fileName_tis620 = iconv("utf-8", "tis-620", $_FILES["file_asbuit"]["name"][$i]);
	$fileName_utf8 = iconv("tis-620", "utf-8", $fileName_tis620);
	for($i=0;$i<count($_FILES["file_asbuit"]["name"]);$i++)
	{
		if($_FILES["file_asbuit"]["name"][$i] != "")
		{
	if(move_uploaded_file($_FILES["file_asbuit"]["tmp_name"], "upload/technical/asbuit/" . $fileName_tis620))
		{
	//insert into asbuit(pro_name)
	$str=" insert into `asbuit` 
	(`asbuit_id`,`zone_asbuit`,`asbuit_name`,`file_asbuit`,`date_asbuit_up`,`asbuit_description`,`show`,`p_id`,`pro_id`,`pro_name`) values ( '$asbuit_id' , '$zone_asbuit' , '$asbuit_name' ,'".$_FILES["file_asbuit"]["name"][$i]."', '$date_asbuit_up', '$asbuit_description', 'y', '$p_id', '$pro_id', '$province_name') " ;
	mysql_query($str) or die (mysql_error());  
	//echo $str;
	echo "<script type='text/javascript'>alert('บันทึกข้อมูลเรียบร้อยแล้ว')</script>";
    echo "<meta http-equiv ='refresh'content='0;URL=show_asbuit.php'>";
}
		}}}
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head><title>:: ระบบจัดเก็บเอกสาร ::</title></head>
<body>
<form name="as1" method="post" enctype="multipart/form-data">
<table align="center">
<th colspan="2" align="center" bgcolor="#FFFF99" scope="col">เพิ่มเอกสาร Asbuit</th>
   <tr>
              <td align="right">โปรเจค : </td>
              <td> <select name="p_id" id="p_id"><option>เลือก</option>
<?php  $sql="select * from project ";
    $a=mysql_query($sql);
    while($objResult=mysql_fetch_array($a)){
?>
  <option value="<?=$objResult['p_id']?>"><?=$objResult['pro_name']?></option>
<?php } ?></select>*</td></tr>

<tr><td align="right">ZONE :</td>
    <td><label for="zone_asbuit"></label>
    <select name="zone_asbuit" id="zone_asbuit">
      <option selected="selected">--กรุณาเลือก--</option>
      <option value="1">1</option>
      <option value="2">2</option>
      <option value="3">3</option>
      <option value="4">4</option>
      <option value="5">5</option>
      <option value="6">6</option>
      <option value="7">7</option>
      <option value="8">8</option>
      <option value="9">9</option>
      <option value="10">10</option>
      </select>     </td></tr>
      
      <tr><td align="right">จังหวัด :</td>
      <td> <select name="pro_id" id="pro_id">
     <option value="">--เลือกจังหวัด--</option>
  		<?php   $strDefault=$row_insert['pro_id'];
		$strSQL = "SELECT * FROM province ORDER BY pro_id ASC";
		$objQuery = mysql_query($strSQL);
		while($objResuut = mysql_fetch_array($objQuery))
		{ if($strDefault == $objResuut["pro_id"]) 
		{ $sel = "selected"; }
		else{ $sel = ""; } ?>  
        <option value="<?=$objResuut["pro_id"];?>" <?=$sel;?>><?=$objResuut["pro_id"]." - ".$objResuut["pro_name"];?></option>  <?php }  ?>
        </select></td></tr>
        
        <font color="#FF0000">&nbsp;</font>
          
     	<tr><td align="right">ชื่อเอกสาร :</td>
    	<td ><label for="asbuit_name"></label>
   		<input type="text" name="asbuit_name" id="asbuit_name" ; /> 	</td>  </tr>
     	
        <tr><td align="right">รายละเอียด :</td>
    	<td ><label for="asbuit_description"></label>
    	<input type="text" name="asbuit_description" id="asbuit_description" ; /></td>  </tr>
     
  		<tr><td colspan="2">&nbsp;</td></tr>
    	<div class="upload">     
        	 <div id="queue"></div>
                <tr> <td colspan="2" align="center"><div align="center">
                <input id="file_asbuit" name="file_asbuit[]" type="file">    
                 <input type="submit"  name="Save" id="Save" value="บันทึก"   />
                 <input type="reset" name="cancel" id="cancel" value="ยกเลิก" />
			</div></td>       </tr></div>        </table></form>
</body>
</html>


ตอนแรกที่ทำให้อัพไฟล์ แค่ไฟล์เดียว มันอัพได้ค่ะ (ทั้งชื่อไฟล์ภาษาไทยและภาษาอังกฤษ)
แต่เวลาอัพไฟล์หลายไฟล์พร้อมกัน (ชื่อไฟล์ภาษาไทย) มันแจ้ง error แบบนี้ค่ะ 
Warning: move_uploaded_file(upload/technical/asbuit/) [function.move-uploaded-file]: failed to open stream: No such file or directory in C:AppServwwwsystemdocasbuit.php on line 21
 
Warning: move_uploaded_file() [function.move-uploaded-file]: Unable to move 'C:WindowsTempphpF697.tmp' to 'upload/technical/asbuit/' in C:AppServwwwsystemdocasbuit.php on line 21
 
แต่ถ้าอัพไฟล์หลายไฟล์พร้อมกัน (ชื่อไฟล์เป็นภาษาอังกฤษ) มันอัพได้ แต่ตรงที่ให้แสดงไฟล์ที่อัพมันจะขึ้นเป็นเลขจำนวน เช่น ถ้าอัพไป 2 ไฟล์ ตรงที่ให้ขึ้นแสดงไฟล์จะเป็นเลข 2 ค่ะ 


ไฟล์ในโฟลเดอร์ก็จะเป็นแบบนี้ค่ะ

คือ อยากให้มันแยกออกมาว่าไฟล์ที่อัพชื่อไฟล์อะไรบ้าง ต้องทำยังไงคะ??


Nachon 202.28.2.xxx 07-03-2017 15:31:53

คำแนะนำ และการใช้งาน

สมาชิก กรุณา ล็อกอินเข้าระบบ เพื่อตั้งคำถามใหม่ หรือ ตอบคำถาม สมาชิกใหม่ สมัครสมาชิกได้ที่ สมัครสมาชิก


  • ถาม-ตอบ กรุณา ล็อกอินเข้าระบบ
  • เปลี่ยน


    ( หรือ เข้าใช้งานผ่าน Social Login )

 ความคิดเห็นที่ 1
เขียนโค้ดผิดหรือป่าว ลองไล่เช็คดูดีๆ
อีกอย่างบรรทัดนี้
 
    $file_asbuit='".$_FILES["file_asbuit"]["name"][$i]."';
    $fileName_tis620 = iconv("utf-8", "tis-620", $_FILES["file_asbuit"]["name"][$i]);
    $fileName_utf8 = iconv("tis-620", "utf-8", $fileName_tis620);
 
น่าจะอยู่ใน for ไหม


ninenik 180.183.134.xxx 07-03-2017
 ความคิดเห็นที่ 2
เปิด for { ก่อนบรรทัดนั้นใช่ไหมคะ??


nachon 202.28.2.xxx 07-03-2017 17:01
 ความคิดเห็นที่ 3
    for($i=0;$i<count($_FILES["file_asbuit"]["name"]);$i++)
    {
        if($_FILES["file_asbuit"]["name"][$i] != "")
        {
			$file_asbuit='".$_FILES["file_asbuit"]["name"][$i]."';
			$fileName_tis620 = iconv("utf-8", "tis-620", $_FILES["file_asbuit"]["name"][$i]);
			$fileName_utf8 = iconv("tis-620", "utf-8", $fileName_tis620);			
    if(move_uploaded_file($_FILES["file_asbuit"]["tmp_name"], "upload/technical/asbuit/" . $fileName_tis620))
        {
...............


ninenik 180.183.134.xxx 07-03-2017
 ความคิดเห็นที่ 4
ลองเปลี่ยนแล้วค่ะ พอกรอกข้อมูลเลือกไฟล์2ไฟล์ เสร็จ พอกดบันทึกแล้วมันจะอยู่หน้าเดิม ข้อมูลที่เรากรอกมันหายไปค่ะ เหมือนมัน reset ข้อมูลที่กรอกลงไปหน่ะค่ะ


nachon 202.29.178.xxx 08-03-2017 09:43
1






เว็บไซต์ของเราให้บริการเนื้อหาบทความสำหรับนักพัฒนา โดยพึ่งพารายได้เล็กน้อยจากการแสดงโฆษณา โปรดสนับสนุนเว็บไซต์ของเราด้วยการปิดการใช้งานตัวปิดกั้นโฆษณา (Disable Ads Blocker) ขอบคุณครับ