phpMyAdmin
 sql >> Baza danych >  >> Database Tools >> phpMyAdmin

W Php, aby dynamicznie pobrać nazwę tabeli i pola z pliku csv i zaimportować do MYSQL

Zaimplementowałem ten kod i jest to kod przetestowany. Myślę, że jest bardzo używany

Kierujesz się pewną zasadą:-

1. Twój plik csv zgodnie z nazwą tabeli bazy danych (np. nazwa tabeli db to użytkownicy, a csv powinno być użytkownikami.csv)

2. Pierwszy wiersz twojego pliku csv powinien być nazwą pól tabeli db (np.:identyfikator, nazwa itp.) po rozpoczęciu wprowadzania danych

3. Możesz pobrać klasę źródła danych z:- http://code.google .com/p/php-csv-parser/ ponieważ mam wymaganie poniżej kodu:require_once 'CSV/DataSource.php';

<?php
ini_set('memory_limit','512M');
$dbhost = "localhost";
$dbname = "excel_import";
$dbuser = "root";
$dbpass = "";

$conn=mysql_connect ($dbhost, $dbuser, $dbpass) or die ("I cannot connect to the database because: " . mysql_error());
mysql_select_db($dbname) or die("Unable to select database because: " . mysql_error());


require_once 'CSV/DataSource.php';


$filename = "users.csv";
$ext = explode(".",$filename);
$path = "uploads/".$filename;

$dbtable = $ext[0];

import_csv($dbtable, $path);


function import_csv($dbtable, $csv_file_name_with_path)
{
    $csv = new File_CSV_DataSource;
    $csv->load($csv_file_name_with_path);

    $csvData = $csv->connect();

    $res='';
    foreach($csvData  as $key)
    {
        $myKey ='';
        $myVal='';
        foreach($key as $k=>$v)
        {
            $myKey .=$k.',';
            $myVal .="'".$v."',";
          }

        $myKey = substr($myKey, 0, -1);
        $myVal = substr($myVal, 0, -1); 
        $query="insert into ".$dbtable." ($myKey)values($myVal)";
        $res=  mysql_query($query);

    }

    if($res ==1)
    {

                echo "record successfully Import.";

    }else{

                echo "record not successfully Import.";
    }
}


  1. DBeaver
  2.   
  3. phpMyAdmin
  4.   
  5. Navicat
  6.   
  7. SSMS
  8.   
  9. MySQL Workbench
  10.   
  11. SQLyog
  1. MySQL UPDATE z SUBQUERY tej samej tabeli

  2. MySQL:odmowa dostępu dla użytkownika 'nazwa_użytkownika'@'localhost'

  3. Błąd podczas importowania zrzutu MySql w Mysql 5.7

  4. MySQL/phpMyAdmin zawiesza się od DELIMITER

  5. Nie można użyć wartości skalarnej jako tablicy podczas pierwszego otwierania phpmyadmina z xamp