|
|
|
อยากให้เราอัพโหลดไฟล์ขึ้นฐานข้อมูล โดยกำหนดค่าเป็นชื่อไฟล์นั้นเลย ต้องทำยังไงครับ |
|
|
|
|
|
|
|
พอดีตอนนี้ไม่ค่อยเข้าใจเรื่องการอัพโหลด
ตอนนี้ใช้
Code (PHP)
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<style>
body {
background: url('images/bg.jpg') top center ;
background-attachment:fixed;
background-size: 100%;
background-origin: content;
background-repeat: no-repeat;
}
</style>
<?php
include "class.resizepic.php";
$db = new mysqli("localhost", "root", "123456", "dbboard");
if(mysqli_connect_errno()) die("Connect Failed! :" . mysqli_connect_error());
mysql_query("SET NAMES UTF8");
if(isset($_POST['Submit'] ))
{
$num_file = count($_FILES['file']['name']);
$select = false;
$count = 0;
for($i = 0; $i < $num_file ; $i++)
{
if($_FILES['file']['error'] != 0)
{
$count++;
continue;
}
if($_FILES['file']['name'] != "")
{
$Filename = $_FILES['file']['name'];
$type = $_FILES['file']['type'];
// .gif, .png, .jpg, .zip, .docx, .pdf, .doc, .swf, .rar
$time = time() * microtime();
if ( $type == "image/gif") {$Filename = $time.".gif"; $pic_type = 'GIF'; }
else if ($type == "image/png") {$Filename = $time.".png"; $pic_type = 'PNG'; }
else if (($type == "image/jpg") or ($type=="image/jpeg") or ($type == "image/pjpeg")) {$Filename = $time.".jpg"; $pic_type = 'JPG'; }
else if ($type == "application/octet-stream") {$Filename = $time.".zip"; $pic_type = false;}
else if ($type == "application/vnd.openxmlformats-officedocument.wordprocessingml.document") {$Filename = $time.".docx"; $pic_type = false;}
else if ($type == "application/pdf") {$Filename = $time.".pdf"; $pic_type = false;}
else if ($type == "application/msword") {$Filename = $time.".doc"; $pic_type = false;}
else if ($type == "application/x-shockwave-flash") {$Filename = $time.".swf"; $pic_type = false;}
else if ($type == "application/octet-stream") {$Filename = $time.".rar"; $pic_type = false;}
if(move_uploaded_file($_FILES['file']['tmp_name'], 'fileUpload/'.$Filename)){
if($pic_type){
$original_image = "fileUpload/" . $Filename ;
$pic_size = getimagesize($original_image);
$desired_width = 250 ;
$per_div = abs($desired_width - $pic_size[0]) * 100 / $pic_size[0];
$desired_height = $pic_size[0] > $desired_width ? $pic_size[1] - floor( $pic_size[1] * $per_div / 100) : $pic_size[1] + floor( $pic_size[1] * $per_div / 100);
$image = new hft_image($original_image);
$image->resize($desired_width, $desired_height, '0');
$image->output_resized("fileUpload/".$Filename, "JPG");
}
$sql = $db->query("INSERT INTO files (file_name) VALUES ('{$Filename}') ");
if($sql)
{
echo "<H3><CENTER><br><br><br><br><br><img src='images/thumbsup.png' width='256px' height='161px'></CENTER></H3>";
echo "<META HTTP-EQUIV=refresh CONTENT=\"1; page_admin.php\">";
$upload_true = true;
}else{
echo "<H3>ERROR:Can not Upload</H3>";
}
}
}else{
$count++;
}
}
}
?>
Tag : PHP
|
|
|
|
|
|
Date :
2015-10-14 11:48:33 |
By :
NuItMaster |
View :
1077 |
Reply :
8 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ผมไม่ค่อยเข้าใจอ่ะครับ งง อยู่ แก้ไม่เป็นครับ โทดทีที่รบกวนครับผม
1. ตัวงานที่จะอัพโหลด
2.ฟอร์มอัพโหลด
manage_upload.php
<meta http-equiv="Content-Type" content="text/html; charset=TIS-620">
<title>Admin</title>
<link rel="shortcut icon" href="images/hospital.png"/>
<style>
body {
background: url('images/bg.jpg') top center ;
background-attachment:fixed;
background-size: 100%;
background-origin: content;
background-repeat: no-repeat;
}
</style>
<center>
<body>
<div><a href="page_admin.php"><img src='images/manage/1440760696_home.png' width='40px' height='40px' style="float: right" /></a></div>
<br/><br/><br/>
<form name="form1" id="form1" action="manage_upload_add.php" method="post" enctype="multipart/form-data">
<p>File1:
<input name="file[]" type="file" id="file[]" />
</p>
<p>File2 :
<input name="file[]" type="file" id="file[]" />
</p>
<p>File3 :
<input name="file[]" type="file" id="file[]" />
</p>
<p>File4 :
<input name="file[]" type="file" id="file[]" />
</p>
<p>
<input type="submit" name="Submit" value="Upload" />
</p>
</form>
</body>
</center>
3.โค้ดอัพโหลดครับ
manage_upload_add.php
<meta http-equiv="Content-Type" content="text/html; charset=TIS-620">
<style>
body {
background: url('images/bg.jpg') top center ;
background-attachment:fixed;
background-size: 100%;
background-origin: content;
background-repeat: no-repeat;
}
</style>
<?php
include "class.resizepic.php";
$db = new mysqli("localhost", "root", "123456", "dbboard");
if(mysqli_connect_errno()) die("Connect Failed! :" . mysqli_connect_error());
mysql_query("SET NAMES UTF8");
if(isset($_POST['Submit'] ))
{
$num_file = count($_FILES['file']['name']);
$select = false;
$count = 0;
for($i = 0; $i < $num_file ; $i++)
{
if($_FILES['file']['error'][$i] != 0)
{
$count++;
continue;
}
if($_FILES['file']['name'][$i] != "")
{
$Filename = $_FILES['file']['name'][$i];
$type = $_FILES['file']['type'][$i];
// .gif, .png, .jpg, .zip, .docx, .pdf, .doc, .swf, .rar
if ( $type == "image/gif") {$pic_type = 'GIF'; }
else if ($type == "image/png") {$pic_type = 'PNG'; }
else if (($type == "image/jpg") or ($type=="image/jpeg") or ($type == "image/pjpeg")) {$pic_type = 'JPG'; }
else if ($type == "application/octet-stream") {$pic_type = false;}
else if ($type == "application/vnd.openxmlformats-officedocument.wordprocessingml.document") {$pic_type = false;}
else if ($type == "application/pdf") {$pic_type = false;}
else if ($type == "application/msword") {$pic_type = false;}
else if ($type == "application/x-shockwave-flash") {$pic_type = false;}
else if ($type == "application/octet-stream") {$pic_type = false;}
if(move_uploaded_file($_FILES['file']['tmp_name'][$i], 'fileUpload/'.$Filename)){
if($pic_type){
$original_image = "fileUpload/". $Filename ;
$pic_size = getimagesize($original_image);
$desired_width = 250 ;
$per_div = abs($desired_width - $pic_size[0]) * 100 / $pic_size[0];
$desired_height = $pic_size[0] > $desired_width ? $pic_size[1] - floor( $pic_size[1] * $per_div / 100) : $pic_size[1] + floor( $pic_size[1] * $per_div / 100);
$image = new hft_image($original_image);
$image->resize($desired_width, $desired_height, '0');
$image->output_resized("fileUpload/".$Filename, "JPG");
}
$sql = $db->query("INSERT INTO files (file_name) VALUES ('{$Filename}') ");
if($sql)
{
echo "<H3><CENTER><br><br><br><br><br><img src='images/thumbsup.png' width='256px' height='161px'></CENTER></H3>";
echo "<META HTTP-EQUIV=refresh CONTENT=\"0; page_admin.php\">";
$upload_true = true;
}else{
echo "<H3>ERROR:Can not Upload</H3>";
}
}
}else{
$count++;
}
}
}
?>
4.อัพโลหดเสร็จ ดู SQL
5.ไฟล์ที่ถูกคัดลอก
6.หน้าดาวน์โหลด
7.โค้ดหน้าดาวน์โหลด (เฉพาะส่วน)
page_download.php
<!------------------------------------------------------ Download ------------------------------------------------------------------>
<div id='tab3'>
<br>
<?
$db = new mysqli("localhost", "root", "123456", "dbboard");
if(mysqli_connect_errno()) die("Connect Failed! :" . mysqli_connect_error());
$db->set_charset("utf8");
$sql = $db->query("SELECT * FROM files");
echo "<table border = 1 cellpadding = 5 cellspacing = 1><tr>";
$rows = 0;
while($result = $sql->fetch_object()){
echo "<td>";
$rows++;
$type = substr($result->file_name,-3);
if($type == 'jpg' or $type == 'png' or $type == 'gif'){
?>
<img src="fileUpload/<?php echo $result->file_name; ?>" /><br/>
<a href="download.php?pic=picture.jpg"><img src='images/manage/1440760601_download.png' width='40px' height='40px' style="float: right" /></a>
<?
}else{
?>
<a href="fileUpload/<?php echo $result->file_name; ?>"><?php echo $result->file_name; ?></a>
<?
}
echo"</td>";
if(($rows)%2==0)
{
echo"<tr></tr>";
}
}
echo"</tr></table>";
?>
</div>
<!------------------------------------------------------------------------------------------------------------------------------------->
คือ ผมไม่ฉลาดนักเรื่องแบบนี้
สิ่งที่อยากให้ช่วย
- อยากให้อัพโหลดไฟล์ ทดสอบ.docx และถูกจัดเก็บลงฐานข้อมูลให้ชื่อว่า ทดสอบ.docx
- อยากให้หน้าดาวน์โหลดชึ้นชื่ ทดสอบ.docx
|
|
|
|
|
Date :
2015-10-14 16:24:22 |
By :
NuItMaster |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ขอแบบเป็นโค้ดนะครับ ผมไม่เข้าใจนัก ขอโทดที่รบกวน ขอบคุณครับ
|
|
|
|
|
Date :
2015-10-14 16:26:08 |
By :
NuItMaster |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ผมก็แจ้งไปก่อนหน้านี้แล้ว แต่ถ้าไฟล์ที่อัพโหลด มีชื่อที่เป็นภาษาไทย ก็แนะนำให้ rename ดีกว่า ให้เป็นตัวเลขหรืออังกฤษ ไม่งั้นมีงานเข้าตอนเรียกไฟล์
เอาแบบจริงๆจังๆ เลยนะครับ โค้ดคุณก่อนหน้านี้อ่ะถูกแล้ว จะไม่มีปัญหาเรื่องการเรียกไฟล์ เพราะมีการ Rename ชื่อใหม่ ถ้าจะเก็บชื่อไฟล์เดิมที่อัพโหลดก็แนะนำให้เก็บแยกอีกฟิลด์นึง อาจจะเป็น original_file_name
ตอนบันทึกลงฐานข้อมูล ก็เก็บ $_FILES['file']['name'] ลงในฟิลด์ original_file_name น่าจะพอนึกออกนะครับ ถ้าโค้ดนี้คุณเขียนขึ้นมาเอง
|
|
|
|
|
Date :
2015-10-14 16:47:02 |
By :
arm8957 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
อ๋อ ขอบคุณครับ
|
|
|
|
|
Date :
2015-10-14 17:28:45 |
By :
NuItMaster |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ประมาณแบบนี้สินะ
Code (PHP)
echo '<a href="' . $file_name . '">' . $original_file_name . '</a>';
|
|
|
|
|
Date :
2015-10-14 17:32:40 |
By :
CasanovaKung |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ขอโทดครับ โค้ดการอัพโหลดผมไม่ได้เขียนขึ้นมาเอง เพราะไม่มีความรู้เรื้องพวกนี้เท่าไหร่ ต้องขอโทดจริงๆที่รบกวน
ผมนำของผู้อื่นมาแก้ไขดัดแปลงในส่วนที่ผมพอทำได้ ผมเขียนขึ้นมาเองไม่ถูกครับ ไม่มีความรู้เรื่องนี้เท่าไหร่เลย
|
ประวัติการแก้ไข 2015-10-15 20:41:36
|
|
|
|
Date :
2015-10-15 20:39:59 |
By :
NuItMaster |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ผมไม่ได้เขียนโค้ดขึ้นมาเองครับ
|
|
|
|
|
Date :
2015-10-18 19:40:17 |
By :
NuItMaster |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Load balance : Server 04
|