Register Register Member Login Member Login Member Login Forgot Password ??
PHP , ASP , ASP.NET, VB.NET, C#, Java , jQuery , Android , iOS , Windows Phone
 

Registered : 109,038

HOME > PHP > PHP Forum > แจกวิธีการ [PHP] การนำข้อมูลใน Excel ที่อ่านค่าด้วย PHPExcel มาใส่ข้อมูลลงใน input form แบบ autofill ในรูปแบบเลือกช่อง Excel ที่ต้องการ ครับ


[PHP] แจกวิธีการ [PHP] การนำข้อมูลใน Excel ที่อ่านค่าด้วย PHPExcel มาใส่ข้อมูลลงใน input form แบบ autofill ในรูปแบบเลือกช่อง Excel ที่ต้องการ ครับ

 
Topic : 135010



โพสกระทู้ ( 131 )
บทความ ( 14 )



สถานะออฟไลน์



แจกวิธีการ [PHP] การนำข้อมูลใน Excel ที่อ่านค่าด้วย PHPExcel มาใส่ข้อมูลลงใน input form แบบ autofill ในรูปแบบเลือกช่อง Excel ที่ต้องการ + รองรับไม่ว่าจะกรอกเป็นตัวอักษรขนาดไหน ก็จะกลายเป็นตัวพิมพ์ใหญ่เสมอ ครับ

[PHP] การนำข้อมูลใน Excel ที่อ่านค่าด้วย PHPExcel มาใส่ข้อมูลลงใน input form แบบ autofill ในรูปแบบเลือกช่อง Excel ที่ต้องการ + รองรับไม่ว่าจะกรอกเป็นตัวอักษรขนาดไหน ก็จะกลายเป็นตัวพิมพ์ใหญ่เสมอ บทความเรื่องการนำข้อมูลใน Excel ที่อ่านค่าด้วย PHPExcel มาใส่ข้อมูลลงใน input form แบบ autofill ในรูปแบบเลือกช่อง Excel ที่ต้องการ + รองรับไม่ว่าจะกรอกเป็นตัวอักษรขนาดไหน ก็จะกลายเป็นตัวพิมพ์ใหญ่เสมอครับ

ซึ่งการนำข้อมูลใน Excel ที่อ่านค่าด้วย PHPExcel มาใส่ข้อมูลลงใน input form แบบ autofill ในรูปแบบเลือกช่อง Excel ที่ต้องการนั้น ได้คำตอบมาจาก link ในเว็บ Ninenik ด้านล่างครับ

http://niik.in/que_3011_6720

และเรื่อง รองรับไม่ว่าจะกรอกเป็นตัวอักษรขนาดไหน ก็จะกลายเป็นตัวพิมพ์ใหญ่เสมอ ได้แนวทางมาจาก เว็บ jQuery Forum ด้วยเช่นกันครับ

https://forum.jquery.com/topic/convert-text-to-uppercase

ซึ่งปรับปรุงเป็นฉบับของตัวเอง Code ทั้งหมด มีดังนี้ครับ

1. excelimport.php

Code (PHP)
01.<!DOCTYPE html> 
02.<html> 
03.<head> 
04.    <meta charset="UTF-8"
05.    <title>Document</title>
06.    <style>
07.    h2,h4 {display: inline;}
08.    </style>
09.</head>
10.    
11.<body>
12.  
13.<form action="" method="post" enctype="multipart/form-data" name="myform1" id="myform1">
14.  
15.    <details>
16.        <summary>กรอกช่อง Excel ที่ต้องการจะเลือก</summary>
17.        <br><h4 for="selectcell1">ช่อง Excel ที่ต้องการจะเลือกในส่วน First name : </h4><input type="text" id="selectcell1" name="selectcell1"><br><br>
18.        <h4 for="selectcell2">ช่อง Excel ที่ต้องการจะเลือกในส่วน Middle name : </h4><input type="text" id="selectcell2" name="selectcell2"><br><br>
19.        <h4 for="selectcell3">ช่อง Excel ที่ต้องการจะเลือกในส่วน Last name : </h4><input type="text" id="selectcell3" name="selectcell3">
20.    </details><br>
21.  
22.    <h2 for="myfile1">Select files : </h2><input type="file" name="excelFile" id="excelFile" /><br><br>
23.    <h2 for="fname">First name : </h2><input type="text" id="fname" name="fname"><br><br>
24.    <h2 for="lname">Middle name : </h2><input type="text" id="lname" name="lname"><br><br>
25.    <h2 for="lname">Last name : </h2><input type="text" id="mname" name="mname"><br><br>
26.  <input type="submit" name="btnSubmit" id="btnSubmit" value="Submit" />
27.</form>
28.  
30.<script type="text/javascript">
31.$(function(){
32.        
33.        
34.    // เมื่อฟอร์มการเรียกใช้ evnet submit ข้อมูล       
35.    $("#excelFile").on("change",function(e){
36.        e.preventDefault(); // ปิดการใช้งาน submit ปกติ เพื่อใช้งานผ่าน ajax
37.            
38.        // เตรียมข้อมูล form สำหรับส่งด้วย  FormData Object
39.       var formData = new FormData($("#myform1")[0]);
40.    
41.        // ส่งค่าแบบ POST ไปยังไฟล์ read_excel.php รูปแบบ ajax แบบเต็ม
42.        $.ajax({
43.            url: 'read_excel.php',
44.            type: 'POST',
45.            data: formData,
46.            /*async: false,*/
47.            cache: false,
48.            contentType: false,
49.            processData: false
50.        }).done(function(data){
51.                console.log(data);  // ทดสอบแสดงค่า  ดูผ่านหน้า console
52./*              การใช้งาน console log เพื่อ debug javascript ใน chrome firefox และ ie
53.                http://www.ninenik.com/content.php?arti_id=692 via @ninenik         */
54.                  
55.                $('#selectcell1').val($('#selectcell1').val().toUpperCase());
56.                $('#selectcell2').val($('#selectcell2').val().toUpperCase());
57.                $('#selectcell3').val($('#selectcell3').val().toUpperCase());
58.                  
59.                if($("#selectcell1").val() != ""){
60.                $("#fname").val(eval("data." + $("#selectcell1").val()));
61.                }
62.                if($("#selectcell2").val() != ""){
63.                $("#lname").val(eval("data." + $("#selectcell2").val()));
64.                }
65.                if($("#selectcell3").val() != ""){
66.                $("#mname").val(eval("data." + $("#selectcell3").val()));
67.                }
68.        });    
69.    });  
70.});
71.</script>
72.</body>
73.</html>


2. read_excel.php (ยก Code จากคำตอบในเว็บ Ninenik มาใช้งานได้เลยครับ)

Code (PHP)
01.<?php
02.header("Content-type:application/json; charset=UTF-8");   
03.header("Cache-Control: no-store, no-cache, must-revalidate");        
04.header("Cache-Control: post-check=0, pre-check=0", false);
05./** Error reporting */
06.error_reporting(E_ALL);
07.ini_set('display_errors', TRUE);
08.ini_set('display_startup_errors', TRUE);
09.date_default_timezone_set('Asia/Bangkok');
11.require_once("PHPExcel/Classes/PHPExcel.php");
12.?>
13.<?php
14.if(isset($_FILES['excelFile']['name']) && $_FILES['excelFile']['name']!=""){
15.    $tmpFile = $_FILES['excelFile']['tmp_name']; 
16.    $fileName = $_FILES['excelFile']['name'];  // เก็บชื่อไฟล์
17.    $_fileup = $_FILES['excelFile'];
18.    $info = pathinfo($fileName);
19.    $allow_file = array("csv","xls","xlsx");
20./*  print_r($info);         // ข้อมูลไฟล์  
21.    print_r($_fileup);*/
22.    if($fileName!="" && in_array($info['extension'],$allow_file)){
23.        // อ่านไฟล์จาก path temp ชั่วคราวที่เราอัพโหลด
24.        $objPHPExcel = PHPExcel_IOFactory::load($tmpFile);     
25.              
26.              
27.        // ดึงข้อมูลของแต่ละเซลในตารางมาไว้ใช้งานในรูปแบบตัวแปร array
28.        $cell_collection = $objPHPExcel->getActiveSheet()->getCellCollection();
29.               
30.        // วนลูปแสดงข้อมูล
31.        $v=1;
32.        $json_data = array();
33.        foreach ($cell_collection as $cell) {
34.            // ค่าสำหรับดูว่าเป็นคอลัมน์ไหน เช่น A B C ....
35.            $column = $objPHPExcel->getActiveSheet()->getCell($cell)->getColumn();
36.            // คำสำหรับดูว่าเป็นแถวที่เท่าไหร่ เช่น 1 2 3 .....
37.            $row = $objPHPExcel->getActiveSheet()->getCell($cell)->getRow();
38.            // ค่าของข้อมูลในเซลล์นั้นๆ เช่น A1 B1 C1 ....
39.            $data_value = $objPHPExcel->getActiveSheet()->getCell($cell)->getValue();         
40.                  
41.            // เท่านี้เราก็สามารถแสดงข้อมูลจากการอ่านไฟล์ได้แล้ว และสามารถนำข้อมูลเหล่านี้
42.            // ทำการบันทักลงฐานข้อมูล หรือแสดงได้เลย
43.            $json_data["$column$row"] = $data_value;
44.//            echo $v." ----  ".$data_value."<br>";
45.             $v++;
46.        }      
47.         // แปลง array เป็นรูปแบบ json string 
48.        if(isset($json_data)){ 
49.            $json= json_encode($json_data);   
50.            if(isset($_GET['callback']) && $_GET['callback']!=""){   
51.            echo $_GET['callback']."(".$json.");";       
52.            }else{   
53.            echo $json;   
54.            }   
55.        }       
56.    }
57.}
58.?>


3. PHPExcel ซึ่งโหลดจากเว็บ https://github.com/PHPOffice/PHPExcel/ ซึ่งมีโครงสร้างของไฟล์ทั้งหมด ดังนี้ครับ

true stracture

4. excelimport.xlsx - http://doanga2007.github.io/excelimport.xlsx

Screenshot ครับ

full success manual select excel cell2

Link บทความครับ

ซึ่ง Link บทความ ขณะรอขึ้นหน้าแรกของเว็บ (ซึ่งยังไม่ใช่ Real Link) อยู่ที่ Link : https://www.thaicreate.com/community/import-excel-with-phpexcel-to-insert-data-to-input-for-autofill-and-manual-select-cell-and-uppercase/view.html ครับ




Tag : PHP, HTML, HTML5, JavaScript, Excel (Excel.Application), XAMPP



ประวัติการแก้ไข
2020-03-16 15:25:52
2020-03-18 13:35:05
2020-03-20 09:14:32
Move To Hilight (Stock) 
Send To Friend.Bookmark.
Date : 2020-03-14 20:29:57 By : doanga2007 View : 2585 Reply : 1
 

 

No. 1



โพสกระทู้ ( 1,458 )
บทความ ( 0 )



สถานะออฟไลน์
Twitter Facebook Blogger

Thanks
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2020-08-03 13:17:00 By : PhrayaDev
 

   

ค้นหาข้อมูล


   
 

แสดงความคิดเห็น
Re : แจกวิธีการ [PHP] การนำข้อมูลใน Excel ที่อ่านค่าด้วย PHPExcel มาใส่ข้อมูลลงใน input form แบบ autofill ในรูปแบบเลือกช่อง Excel ที่ต้องการ ครับ
 
 
รายละเอียด
 
ตัวหนา ตัวเอียง ตัวขีดเส้นใต้ ตัวมีขีดกลาง| ตัวเรืองแสง ตัวมีเงา ตัวอักษรวิ่ง| จัดย่อหน้าอิสระ จัดย่อหน้าชิดซ้าย จัดย่อหน้ากึ่งกลาง จัดย่อหน้าชิดขวา| เส้นขวาง| ขนาดตัวอักษร แบบตัวอักษร
ใส่แฟลช ใส่รูป ใส่ไฮเปอร์ลิ้งค์ ใส่อีเมล์ ใส่ลิ้งค์ FTP| ใส่แถวของตาราง ใส่คอลัมน์ตาราง| ตัวยก ตัวห้อย ตัวพิมพ์ดีด| ใส่โค้ด ใส่การอ้างถึงคำพูด| ใส่ลีสต์
smiley for :lol: smiley for :ken: smiley for :D smiley for :) smiley for ;) smiley for :eek: smiley for :geek: smiley for :roll: smiley for :erm: smiley for :cool: smiley for :blank: smiley for :idea: smiley for :ehh: smiley for :aargh: smiley for :evil:
Insert PHP Code
Insert ASP Code
Insert VB.NET Code Insert C#.NET Code Insert JavaScript Code Insert C#.NET Code
Insert Java Code
Insert Android Code
Insert Objective-C Code
Insert XML Code
Insert SQL Code
Insert Code
เพื่อความเรียบร้อยของข้อความ ควรจัดรูปแบบให้พอดีกับขนาดของหน้าจอ เพื่อง่ายต่อการอ่านและสบายตา และตรวจสอบภาษาไทยให้ถูกต้อง

อัพโหลดแทรกรูปภาพ

Notice

เพื่อความปลอดภัยของเว็บบอร์ด ไม่อนุญาติให้แทรก แท็ก [img]....[/img] โดยการอัพโหลดไฟล์รูปจากที่อื่น เช่นเว็บไซต์ ฟรีอัพโหลดต่าง ๆ
อัพโหลดแทรกรูปภาพ ให้ใช้บริการอัพโหลดไฟล์ของไทยครีเอท และตัดรูปภาพให้พอดีกับสกรีน เพื่อความโหลดเร็วและไฟล์ไม่ถูกลบทิ้ง

   
  เพื่อความปลอดภัยและการตรวจสอบ กระทู้ที่แทรกไฟล์อัพโหลดไฟล์จากที่อื่น อาจจะถูกลบทิ้ง
 
โดย
อีเมล์
บวกค่าให้ถูก
<= ตัวเลขฮินดูอารบิก เช่น 123 (หรือล็อกอินเข้าระบบสมาชิกเพื่อไม่ต้องกรอก)





ThaiCreate.Com Logo
© www.ThaiCreate.Com. 2003-2025 All Rights Reserved.
ไทยครีเอทบริการ จัดทำดูแลแก้ไข Web Application ทุกรูปแบบ (PHP, .Net Application, VB.Net, C#)
[Conditions Privacy Statement] ติดต่อโฆษณา 081-987-6107 อัตราราคา คลิกที่นี่