如何使用php在mysql数据库中上传csv文件

如何使用php在mysql数据库中上传csv文件,php,mysql,csv,Php,Mysql,Csv,这段代码工作得很好,但当我添加两行时,它就不工作了 请帮我解决这个问题 谢谢 不起作用 mysql_query("INSERT INTO sale2 (username, date, item, quantity, amount) VALUES 这是有效的 mysql_query("INSERT INTO sale2 (username, date, item) VALUES 这是完整的代码 <?php //connect to the datab

这段代码工作得很好,但当我添加两行时,它就不工作了

请帮我解决这个问题 谢谢

不起作用

  mysql_query("INSERT INTO sale2 (username, date, item, quantity, amount) VALUES
这是有效的

 mysql_query("INSERT INTO sale2 (username, date, item) VALUES 
这是完整的代码

<?php  

            //connect to the database 
            $connect = mysql_connect("localhost","root",""); 
            mysql_select_db("member",$connect); //select the table 
            // 

            if ($_FILES[csv][size] > 0) { 

                //get the csv file 
                $file = $_FILES[csv][tmp_name]; 
                $handle = fopen($file,"r"); 

                //loop through the csv file and insert into database 
                do { 
                    if ($data[0]) { 
                        mysql_query("INSERT INTO sale2 (username, date, item) VALUES 
                            ( 
                                '".addslashes($data[0])."', 
                                '".addslashes($data[1])."', 
                                '".addslashes($data[2])."' 
            \

                            ) 
                        "); 
                    } 
                }  while ($data = fgetcsv($handle,1000,",","'")); 
                // 

                //redirect 
                header('Location: csv.php?success=1'); die; 

            } 

            ?> 

            <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 
            <html xmlns="http://www.w3.org/1999/xhtml"> 
            <head> 
            <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" /> 
            <title>Import a CSV File with PHP & MySQL</title> 
            </head> 

            <body> 

            <?php if (!empty($_GET[success])) { echo "<b>Your file has been imported.</b><br><br>"; } //generic success notice ?> 

            <form action="" method="post" enctype="multipart/form-data" name="form1" id="form1"> 
              Choose your file: <br /> 
              <input name="csv" type="file" id="csv" /> 
              <input type="submit" name="Submit" value="Submit" /> 
            </form> 

            </body> 
            </html> 

使用PHP和MySQL导入CSV文件
选择您的文件:

尝试查找脚本无法工作的错误。 还可以使用异常处理try catch action并通过$e->getMessage()获取消息


首先创建下面的数据库是代码

SET FOREIGN_KEY_CHECKS=0;
DROP TABLE IF EXISTS `contacts`;
CREATE TABLE `contacts` (
  `contact_id` int(11) NOT NULL auto_increment,
  `contact_first` varchar(255) character set latin1 default NULL,
  `contact_last` varchar(255) character set latin1 default NULL,
  `contact_email` varchar(255) character set latin1 default NULL,
  PRIMARY KEY  (`contact_id`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8;
第二步创建了csv文件,请看一看

contacts.csv

Jim,Smith,jim@tester.com
Joe,Tester,joe@tester.com
连接数据库并运行下面的导入csv文件的最后一步是代码

 <?php  
$connect = mysql_connect("localhost","root",""); 
mysql_select_db("mydatabase",$connect);


if ($_FILES[csv][size] > 0) { 

    $file = $_FILES[csv][tmp_name]; 
    $handle = fopen($file,"r"); 

    do { 
        if ($data[0]) { 
            mysql_query("INSERT INTO contacts (contact_first, contact_last, contact_email) VALUES 
                ( 
                    '".addslashes($data[0])."', 
                    '".addslashes($data[1])."', 
                    '".addslashes($data[2])."' 
                ) 
            "); 
        } 
    } while ($data = fgetcsv($handle,1000,",","'")); 

    header('Location: index.php?success=1'); die; 

} 

?> 

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 
<html xmlns="http://www.w3.org/1999/xhtml"> 
<head> 
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" /> 
<title>Import a CSV File with PHP & MySQL</title> 
</head> 

<body> 

<?php if (!empty($_GET[success])) { echo "<b>Your file has been imported.</b><br><br>"; } ?> 

<form action="" method="post" enctype="multipart/form-data" name="form1" id="form1"> 
  Choose your file: <br /> 
  <input name="csv" type="file" id="csv" /> 
  <input type="submit" name="Submit" value="Submit" /> 
</form> 

</body> 
</html> 

使用PHP和MySQL导入CSV文件
选择您的文件:

我认为您需要首先转换集合中的CSV文件。之后,您可以添加循环并调用insert查询来插入数据

在这里,您将获得将CSV文件转换为集合数组的代码。

当您表示不工作时,您会遇到什么错误?pageadd error\u reporting(E\u ALL)中没有显示错误;在FiLeIt的顶部,它被重定向到你提到的位置?考虑从你的文件中发布样本数据,并且精确表StimeDaar我替换UR代码没有发现错误,它正在显示这个文本,但是它不是上传你的文件已经被导入。
Jim,Smith,jim@tester.com
Joe,Tester,joe@tester.com
 <?php  
$connect = mysql_connect("localhost","root",""); 
mysql_select_db("mydatabase",$connect);


if ($_FILES[csv][size] > 0) { 

    $file = $_FILES[csv][tmp_name]; 
    $handle = fopen($file,"r"); 

    do { 
        if ($data[0]) { 
            mysql_query("INSERT INTO contacts (contact_first, contact_last, contact_email) VALUES 
                ( 
                    '".addslashes($data[0])."', 
                    '".addslashes($data[1])."', 
                    '".addslashes($data[2])."' 
                ) 
            "); 
        } 
    } while ($data = fgetcsv($handle,1000,",","'")); 

    header('Location: index.php?success=1'); die; 

} 

?> 

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 
<html xmlns="http://www.w3.org/1999/xhtml"> 
<head> 
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" /> 
<title>Import a CSV File with PHP & MySQL</title> 
</head> 

<body> 

<?php if (!empty($_GET[success])) { echo "<b>Your file has been imported.</b><br><br>"; } ?> 

<form action="" method="post" enctype="multipart/form-data" name="form1" id="form1"> 
  Choose your file: <br /> 
  <input name="csv" type="file" id="csv" /> 
  <input type="submit" name="Submit" value="Submit" /> 
</form> 

</body> 
</html>