0

如何将 xlsx 文件从网页上传到服务器?我有关于读取 Excel 文件的问题。我有一个 php 代码,但我需要将文件从网页上传到我的服务器。因为如果我不上传它,我就无法读取文件。

这是我的 php 代码。在这段代码中,我需要上传文件。

header('Content-Type: text/plain');

    if (isset($argv[1]))
    {
        $Filepath = $argv[1];
    }
    elseif (isset($_POST['File']))
    {
        $Filepath = $_POST['File'];
    }
    else
    {
        if (php_sapi_name() == 'cli')
        {
            echo 'Please specify filename as the first argument'.PHP_EOL;
        }
        else
        {
            echo 'Please specify filename as a HTTP GET parameter "File", e.g., "/test.php?File=test.xlsx"';
        }
        exit;
    }

    // Excel reader from http://code.google.com/p/php-excel-reader/
    require('php-excel-reader/excel_reader2.php');
    require('SpreadsheetReader.php');

    date_default_timezone_set('UTC');

    $StartMem = memory_get_usage();


    try
    {
        $Spreadsheet = new SpreadsheetReader($Filepath);
        $BaseMem = memory_get_usage();

        $Sheets = $Spreadsheet -> Sheets();


        //print_r($Sheets);
        $TabloArray=array();
        $Satir=array();

        foreach ($Sheets as $Index => $Name)
        {


            $Time = microtime(true);

            $Spreadsheet -> ChangeSheet($Index);

            foreach ($Spreadsheet as $Key => $Row)
            {
                //echo $Key.': ';
                if($Key==0)
                {


                    continue;
                }
                if ($Row)
                {
                    $Satir['Isim']=$Row[0];
                    $Satir['SoyIsim']=$Row[1];
                    $Satir['Yas']=$Row[2];
                    $TabloArray[]=$Satir;
                }
                else
                {
                    var_dump($Row);
                }
                $CurrentMem = memory_get_usage();
            }



        }
        print_r(json_encode($TabloArray));

    }
    catch (Exception $E)
    {
        echo $E -> getMessage();
    }

和用于阅读的 JavaScript 代码

json_obj = $.parseJSON(veri);//parse JSON
for(var i in json_obj)
    {
        Isimler[i]=json_obj.Isim;
        SoyIsim[i]=json_obj.SoyIsim;
        Yas[i]=json_obj.Yas;
        var Table=document.getElementById("tablo_icin2");
        var td = document.createElement("td");
        var tr=document.createElement("tr");
td.appendChild(document.createTextNode(json_obj[i].Isim));
                tr.setAttribute("id","element"+i);
                tr.appendChild(td);
                td = document.createElement("td");
td.appendChild(document.createTextNode(json_obj[i].SoyIsim));
                tr.appendChild(td);
                td = document.createElement("td");
td.appendChild(document.createTextNode(json_obj[i].Yas));
                tr.appendChild(td);
                Table.appendChild(tr);
}
4

2 回答 2

1

使用解析器:如果你想通过 JavaScript 读取文件,你可以使用 https://github.com/SheetJS/js-xlsx。如果您想通过 php 读取文件,您可以在将文件上传为简单文件后使用https://github.com/PHPOffice/PHPExcel/tree/develop/Documentation 。

于 2016-08-19T09:08:23.643 回答
0

为什么不直接将文件上传到服务器并将其路径保存到数据库。然后当你想阅读它时,从数据库中获取相对于 excel 文件的上传文件夹的路径。

于 2016-08-19T08:56:28.183 回答