อัพโหลดไฟล์หลายไฟล์พร้อมกันแต่ชื่อไฟล์ที่แสดงไม่ตรงตามต้องการ รบกวนช่วยดูโค้ดให้หน่อยค่ะ
Code (PHP)หน้าแสดงข้อมูล 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>
Code (PHP) หน้าเพิ่ม อัพโหลดไฟล์ 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"> </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"> </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:\AppServ\www\systemdoc\asbuit.php on line 21
Warning: move_uploaded_file() [function.move-uploaded-file]: Unable to move 'C:\Windows\Temp\phpF697.tmp' to 'upload/technical/asbuit/' in C:\AppServ\www\systemdoc\asbuit.php on line 21
แต่ถ้าอัพไฟล์หลายไฟล์พร้อมกัน (ชื่อไฟล์เป็นภาษาอังกฤษ) มันอัพได้ แต่ตรงที่ให้แสดงไฟล์ที่อัพมันจะขึ้นเป็นเลขจำนวน เช่น ถ้าอัพไป 2 ไฟล์ ตรงที่ให้ขึ้นแสดงไฟล์จะเป็นเลข 2 ค่ะ
ไฟล์ในโฟลเดอร์ก็จะเป็นแบบนี้ค่ะ
คือ อยากให้มันแยกออกมาว่าไฟล์ที่อัพชื่อไฟล์อะไรบ้าง ต้องทำยังไงคะ??Tag : PHP, MySQL
ประวัติการแก้ไข 2017-03-07 09:47:32 2017-03-07 15:32:38
Date :
2017-03-07 09:46:43
By :
nachon
View :
744
Reply :
2
Load balance : Server 03