Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/244.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
使用php将csv文件导入数据库_Php_Mysql_Csv_Import - Fatal编程技术网

使用php将csv文件导入数据库

使用php将csv文件导入数据库,php,mysql,csv,import,Php,Mysql,Csv,Import,我创建了以下php代码,将.csv文件导入运行在phpmyadmin上的mysql数据库。代码如下: <?php ini_set('display_errors', 1); error_reporting(E_ALL); $db_host = 'localhost'; $db_user = 'root'; $db_pwd = ''; $database = 'mydatabase'; $table = 'demo'; if (!@mysql_connect($db_host, $db_

我创建了以下php代码,将.csv文件导入运行在phpmyadmin上的mysql数据库。代码如下:

<?php
ini_set('display_errors', 1);
error_reporting(E_ALL);
$db_host = 'localhost';
$db_user = 'root';
$db_pwd = '';

$database = 'mydatabase';
$table = 'demo';

if (!@mysql_connect($db_host, $db_user, $db_pwd))
    die("Can't connect to database");

if (!mysql_select_db($database))
    die("Can't select database");


    if(isset($_POST['submit']))
    {
         $fname = $_FILES['sel_file']['name'];
         echo 'upload file name: '.$fname.' ';
         $chk_ext = explode(".",$fname);

         if(strtolower(end($chk_ext)) == "csv")
         {

             $filename = $_FILES['sel_file']['tmp_name'];
             $handle = fopen($filename, "r");

             while (($data = fgetcsv($handle, 1000, ",")) !== FALSE)
             {
                $sql = "INSERT into demo(orders,quantity,country,dates,comment) values('$data[0]','$data[1]','$data[2]', '$data[3]','$data[4]')";
                mysql_query($sql) or die(mysql_error());
             }

             fclose($handle);
             echo "Successfully Imported";

         }
         else
         {
             echo "Invalid File";
         }   
    }

    ?>
    <h1>Import CSV file</h1>
    <form action='<?php echo $_SERVER["PHP_SELF"];?>' method='post' enctype="multipart/form-data">
        Import File : <input type='file' name='sel_file' size='20'>
        <input type='submit' name='submit' value='submit'>
    </form>

不要使用
mysql\ucode>将其更改为PDO或mysqli。也就是说,我已经更改了代码,将每行分解,然后将值分配到列表中。这对我有用

if(isset($_POST['submit']))
{
    $fname = $_FILES['sel_file']['name'];
    echo 'upload file name: '.$fname.' ';

    $chk_ext = explode(".",$fname);

    if(strtolower(end($chk_ext)) == "csv")
    {
        foreach (file($fname) as $row)
        {
            list($data0, $data1, $data2, $data3, $data4) = explode(",", $row);
            $sql = "INSERT into demo(orders,quantity,country,dates,comment) values('$data0','$data1','$data2', '$data3','$data4')";
            mysql_query($sql) or die(mysql_error());
        }

        echo "Successfully Imported";
    }
    else
    {
        echo "Invalid File";
    }   
}

不要使用
mysql.*
它已被删除,不再工作,请改用
PDO
mysqli
。另外,请查看加载数据填充。导入csvSo要快得多我应该在代码中用mysqli替换mysql?你的代码太好了“>Jagdish dhakad