импорт таблицы Excel в таблицу mysql с помощью php

#php #mysql #excel

#php #mysql #excel

Вопрос:

Я хочу импортировать данные таблицы Excel в таблицу mysql с помощью php, но я получаю эти ошибки, кто-нибудь, пожалуйста, избавьте меня от этого .. пожалуйста, посмотрите на php-код, игнорируйте только html-материал.

 <?php
    include ("connection.php");

    if(isset($_POST["submit"]))
    {
        $file = $_FILES['file']['tmp_name'];
        $handle = fopen($file, "r");
        $c = 0;
        while(($filesop = fgetcsv($handle, 1000, ",")) !== false)
        {
            $name = $filesop[1];
            $email = $filesop[2];

            $sql = mysql_query("INSERT INTO co (name, email) VALUES ('$name','$email')");

            $c = $c   1;

        }
        fcose($file);

            if($sql){
                echo "You database has imported successfully. You have inserted ". $c ." recoreds";
            }else{
                echo "Sorry! There is some problem.";
            }

    }
?>
  

это таблица Excel

в базе данных отображается другой формат

Комментарии:

1. Не похоже, что ваш файл сохранен в формате CSV — вы не можете использовать fgetcsv для чтения файлов формата Excel.

2. Чтобы импортировать файл Excel в базу данных, вы должны использовать какой-нибудь плагин, например phpexcel.codeplex.com в противном случае здесь вам нужно сохранить файл Excel в формате csv и импортировать, используя этот код, он будет работать

3. кажется, ваш файл sample1.csv, который действительно является правильным форматом. Теперь вы получаете символы gibrish в базе данных. Перед запуском попробуйте установить набор символов в utf8. Для этого запустите этот запрос перед всеми заданными ИМЕНАМИ utf8. Кроме того, убедитесь, что набор символов вашей таблицы, базы данных равен utf8

Ответ №1:

Существуют библиотеки excellibrary/php-excel-reader/excel_reader2.php и excellibrary/SpreadsheetReader.php

вы можете использовать эти библиотеки для чтения вашего содержимого и преобразования его в массив. Как только вы преобразуете данные электронной таблицы в массив, вы можете легко вставлять их в базу данных с помощью итераций.