มีปัญเกี่ยวกับการ Upload ตอนบันทึกลงฐาน

ถาม-ตอบ แนะนำไอเดียว โค้ดตัวอย่าง แนวทาง วิธีแก้ปัญหา มีปัญเกี่ยวกับการ Upload ตอนบันทึกลงฐาน

มีปัญเกี่ยวกับการ Upload ตอนบันทึกลงฐาน
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
ผมใช้ฟอร์มแบบ multiple="multiple"
 
<input class="form-control css-require" type="file" name="fileup" multiple="multiple">
 
ส่วนอันนี้คือฟอร์มบันทึก คือผมต้องการที่จะอัพโหลดไฟล์หลายๆไฟล์
แต่ไม่รู้ว่าต้องทำยังไงลองโค้ดที่หามาแต่ติด Error Save [".$strSQL."] อะครับ
 
<?php
include('connect.php');
$folder = "../fileup/";
$temp = explode(".", $_FILES["fileup"]["name"]);
$newfilename = round(microtime(true)).'.'. end($temp);
$db_path ="$folder".$newfilename  ;
$listtype = array(
'.doc'=>'application/msword',
'.docx'=>'application/vnd.openxmlformats-officedocument.wordprocessingml.document',
'.rtf'=>'application/rtf',
'.pdf'=>'application/pdf');
if ( is_uploaded_file( $_FILES['fileup']['tmp_name'] ) )
{
if($key = array_search($_FILES['fileup']['type'],$listtype))
    {      
    if (move_uploaded_file($_FILES['fileup']['tmp_name'],"$folder".$newfilename))
        {
 
$strSQL = "INSERT INTO sick ";
$strSQL .="(`id`,`id_em`,`day_sick`,`name`,`sick_ra`,`stop_day`,`fileup`) ";
$strSQL .="VALUES ";
$strSQL .="('".$_POST["id"]."','".$_POST["id_em"]."','".$_POST["day_sick"]."' ";
$strSQL .=",'".$_POST["name"]."','".$_POST["sick_ra"]."','".$_POST["stop_day"]."','$db_path') ";
$objQuery = mysql_query($strSQL);
        }
    }
}
if($objQuery)
{
    echo '<meta http-equiv="refresh" content="0;URL=../sSearch.php">';
}
else
{
    echo "Error Save [".$strSQL."]";
}
mysql_close($objConnect);
 
?>


Manit500 19-03-2017 18:47:04

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

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


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


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

 ความคิดเห็นที่ 1

แต่ถ้าอัพไฟล์เดียว ก็ใช้ได้ปกติครับ แต่พอหลายๆไฟล์ทำไม่ได้

ผมเลยงงว่าผมต้องแก้ตรงไหนบ้าง



 



manit500 19-03-2017 18:49
 ความคิดเห็นที่ 2
เอาตัวอย่างโค้ดนี้ไปดูเป็นแนวทาง

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
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
<!DOCTYPE html>
<html lang="en">
  <head>
    <meta charset="utf-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1">
    <title>Document</title>
     integrity="sha384-BVYiiSIFeK1dGmJRAkycuHAHRg32OmUcww7on3RYdg4Va+PmSTsz/K68vbdEjh4u" crossorigin="anonymous">
    <style type="text/css">
        .drop-area{
          width:100px; height:25px;
          border: 1px solid #999; text-align: center;
          padding:10px; cursor:pointer;
        }
        #thumbnail img{width:100px;height:100px;margin:5px;}
        canvas{border:1px solid red;}   
    </style>
</head>
<body>
  
    <br> 
    <div style="margin:auto;width:80%;"
        <h3> บันทึกข้อมูล</h3>  
        <form class="form" id="myFrom" method="post" action=""  role="form" enctype="multipart/form-data">   
            <div class="form-group"
               <lable class="control-label">Name : </lable> 
                <input type="text" autocomplete="off" class="form-control" name="name"
            </div> 
            <div class="form-group"
               <lable class="control-label">Picture : </lable> 
            <div id="upload" class="btn btn-info">
               Upload File
            </div>
            <div id="thumbnail"></div>              
            </div> 
            <button type="submit"  class="btn btn-primary">เพิ่มข้อมูล</button>            
        </form> 
        <br> 
          
<br style="clear:both;">
<br>
<?php
// มีการเลือกไฟล์สำหรับอัพโหลดอย่างน้อย 1 ไฟล์
if(isset($_FILES['file_upload']['name']) && implode("",$_FILES['file_upload']['name'])!=""){
    $uploads_dir = 'uploads'; // โฟลเดอร์สำหรับเก็บไฟล์
    $totalFile = count($_FILES['file_upload']['name']); // จำนวน input file ทั้งหมด
    for($i = 0; $i < $totalFile; $i++){ // วนลูปจัดการไฟล์แต่ละไฟล์
            $tmpFile = $_FILES['file_upload']['tmp_name'][$i]; 
            $fileName = $_FILES['file_upload']['name'][$i];  // เก็บชื่อไฟล์
            if($fileName!=""){
                    $info = pathinfo($fileName);
                    echo "<pre>";
                    print_r($info);         // ข้อมูลไฟล์
                    echo "</pre>";           
                    $ext = $info['extension']; // เก็บค่านามสกุลไฟล์
                    $setFileName = time()."_".$i; // กำหนดชื่อไฟล์ใหม่
                    $fileName_new = $setFileName.".".$ext;         
                    echo $fileName." --  ".$fileName_new."<br>"; // ชื่อไฟล์ และชื่อไฟล์ใหม่
                    if(is_dir($uploads_dir)){
                        if(move_uploaded_file($tmpFile, $uploads_dir."/".$fileName_new)){
                            echo $fileName_new." uploaded!!<br>"; // ชื่อไฟล์ที่อัพโหลดสำเร็จ
                            /////////  เพิ่มคำสั่งอื่นๆ ตามต้องการ
                              
                              
                        }elseecho "อัพโหลดไฟล์ล้มเหลว "; }
                    }else{   echo "ไม่มีโฟลเดอร์นี้ ".$uploads_dir; }
            }
    }
}
?>
</div>
  
  
<script src="//ajax.googleapis.com/ajax/libs/jquery/1.8.3/jquery.min.js"></script> 
<script type="text/javascript" >
$(function () {
  
  
    $("#upload").on("click",function(e){
        var objFile= $("<input>",{
           "class":"file_upload",
            "type":"file",
            "multiple":"true",
            "name":"file_upload[]",
            "style":"display:none",
                change: function(e){
                    var files = this.files
                    showThumbnail(files)   
                }
        });
        $(this).before(objFile);
        $(".file_upload:last").show().click().hide();
        e.preventDefault();
    });
  
    function showThumbnail(files){
  
    //    $("#thumbnail").html("");
        for(var i=0;i<files.length;i++){
            var file = files[i]
            var imageType = /image.*/
            if(!file.type.match(imageType)){
                //     console.log("Not an Image");
                continue;
            }
  
            var image = document.createElement("img");
            var thumbnail = document.getElementById("thumbnail");
            image.file = file;
            thumbnail.appendChild(image)
  
            var reader = new FileReader()
            reader.onload = (function(aImg){
                return function(e){
                    aImg.src = e.target.result;
                };
            }(image))
  
            var ret = reader.readAsDataURL(file);
            var canvas = document.createElement("canvas");
            ctx = canvas.getContext("2d");
            image.onload= function(){
                ctx.drawImage(image,100,100)
            }
        } // end for loop
  
    } // end showThumbnail
  
  
      
      
});
 </script>   
</body>
</html>


หรือดูตัวอย่างเพิ่มเติมได้ที่

https://www.ninenik.com/forum_view_1171_1.html ความคิดเห็นที่ 3



ninenik 19-03-2017
 ความคิดเห็นที่ 3
สอบถามเพิ่มเติมนะครับเวลาเรียกดูใช้ $objResult เหมือนเดิมเนาะ 
แล้วเวลาผมจะแก้ไขอะครับใช้หลักการเดียวกับ insert รึป่าวเปลี่ยนเป็น update แทนประมาณนี้ใช่ไหมครับ


manit500 19-03-2017 21:51
 ความคิดเห็นที่ 4
การเพิ่มรูปตามโค้ตตัวอย่าง ปกติจะใช้วิธีลบข้อมูลรูปหรือรายการที่ไม่ต้องการ แล้วเพิ่มรายการใหม่เข้าไปแทน ขึ้นกับการวางโครงสร้าง db ประกอบด้วย


ninenik 19-03-2017
 ความคิดเห็นที่ 5
สอบถามเพิ่มเติมอีกนิดนะครับ ถ้าผมต้องการให้มันโชว์ชื่อไฟล์ ที่เราเลิอกก่อนที่จะกด
เพิ่มเข้าไปละครับผมต้องไปกำหนดตรงช่วงไหนครับ นั่งมึนอยู่ 


manit500 19-03-2017 22:22
1






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