PHP konwersja z pliku exel do np. mysql

0

Mam takie pytanie czy istnieje jakaś biblioteka, która umozliwia wybranie z plików exel do bazy mysql ?

0

Masz na myśli to żeby przenieść dane z komórek arkusza np do nowo-stworzonej tabeli której kolumny odpowiadają kolumną excela, a recordy wierszom?

0

Spróbuj wpisać w google: "php import sql from excel"

0

Trafiłem na tą bibliotekę PhpSpreadsheet

I teraz zapisanie do pliku działa, ale już odczytanie nie jak próbuje wywołać metodę load
To dostaje komunikat
Call to undefined method PhpOffice\PhpSpreadsheet\Writer\Xlsx::load()

O to jest cały kod

use PhpOffice\PhpSpreadsheet\Spreadsheet;
use PhpOffice\PhpSpreadsheet\Writer\Xlsx;
use PhpOffice\PhpSpreadsheet\Writer\Csv;
class Controller extends BaseController
{
    use AuthorizesRequests, DispatchesJobs, ValidatesRequests;
    public function t() {




    
$spreadsheet = new Spreadsheet();
//$ Reader = new SpreadsheetReader ( $ targetPath );  
//$sheet = $spreadsheet->getActiveSheet();
//$sheet->setCellValue('A1', 'Hello World !');
$a = new Xlsx($spreadsheet);
$spreadsheet2 = $a->load('hello world.xlsx');
0
pol90 napisał(a):

I teraz zapisanie do pliku działa, ale już odczytanie nie jak próbuje wywołać metodę load
To dostaje komunikat
Call to undefined method PhpOffice\PhpSpreadsheet\Writer\Xlsx::load()

https://phpspreadsheet.readthedocs.io/en/stable/topics/reading-files/

5 sekund mi zajęło znalezienie tej dokumentacji - a pierwszy raz widzę libkę na oczy.

0

Już wcześniej próbowałem coś zrobić z load i zwraca min listę elementów tablicy, ale jak próbuje wywołać metodę
ChangeSheet
to jest komunikat nie można wywołac metody ChangeSheet próbowałem zrobić to za pomocą poradnika https://phppot.com/php/import-excel-file-into-mysql-database-using-php/

$inputFileName = 'magda1.ods';

/** Load $inputFileName to a Spreadsheet Object  **/
$spreadsheet = \PhpOffice\PhpSpreadsheet\IOFactory::load($inputFileName);
$sheetData = $spreadsheet->getActiveSheet()->toArray(null, true, true, true);
for ($i=0;$i < count($sheetData);$i++) {
//var_dump($spreadsheet);
$sheetData->ChangeSheet($i);
print $sheetData[$i];

}
0

A jeszcze takie pytanie bo nigdy nie korzystałem z exela i teraz w pętli foreach trzeba się odwołać do poszczególnych pól i teraz jak próbuje sie odwołać do pola A to jest komunikat Trying to get property of non-object

0
pol90 napisał(a):

A jeszcze takie pytanie bo nigdy nie korzystałem z exela i teraz w pętli foreach trzeba się odwołać do poszczególnych pól i teraz jak próbuje sie odwołać do pola A to jest komunikat Trying to get property of non-object

Próbowałeś wpisać w google "phpspreadsheet iterate cells"?

1 użytkowników online, w tym zalogowanych: 0, gości: 1