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

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

รบกวนช่วยดูโค้ดอัพโหลดไฟล์หลายไฟล์พร้อมกัน แต่ชื่อไฟล์ที่แสดงไม่ตรงตามความต้องการ
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
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
หน้าแสดงข้อมูล 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>
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
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
หน้าเพิ่ม อัพโหลดไฟล์ 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">
<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 07-03-2017 15:31:53

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

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


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


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

 ความคิดเห็นที่ 1
เขียนโค้ดผิดหรือป่าว ลองไล่เช็คดูดีๆ
อีกอย่างบรรทัดนี้
 
1
2
3
$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 07-03-2017
 ความคิดเห็นที่ 2
เปิด for { ก่อนบรรทัดนั้นใช่ไหมคะ??


nachon 07-03-2017 17:01
 ความคิดเห็นที่ 3
1
2
3
4
5
6
7
8
9
10
    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 07-03-2017
 ความคิดเห็นที่ 4
ลองเปลี่ยนแล้วค่ะ พอกรอกข้อมูลเลือกไฟล์2ไฟล์ เสร็จ พอกดบันทึกแล้วมันจะอยู่หน้าเดิม ข้อมูลที่เรากรอกมันหายไปค่ะ เหมือนมัน reset ข้อมูลที่กรอกลงไปหน่ะค่ะ


nachon 08-03-2017 09:43
1






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