【问题标题】:import csv file into database using php mysql使用 php mysql 将 csv 文件导入数据库
【发布时间】:2017-10-10 12:23:57
【问题描述】:

我正在尝试通过 php 将 csv 文件导入数据库中,但它无法正常工作。我不知道我在哪里弄错了我的代码

<?php
if (isset($_POST["submit"])) {
    $host = "localhost"; // Host name.
    $db_user = "root"; //mysql user
    $db_password = ""; //mysql pass
    $db = 'moodle'; // Database name.
    $conn = mysql_connect($host, $db_user, $db_password) or die(mysql_error());
    mysql_select_db($db) or die(mysql_error());


    $filename = $_FILES["file"]["name"];
    $ext = substr($filename, strrpos($filename, "."), (strlen($filename) - strrpos($filename, ".")));

    //we check,file must be have csv extention
    if ($ext == "csv") {
        $file = fopen($filename, "r");
        while (($emapData = fgetcsv($file, 10000, ",")) !== FALSE) {
            $sql = "INSERT into mdl_user(username,email) values('$emapData[0]','$emapData[1]')";
            mysql_query($sql);
        }
        fclose($file);
        echo "CSV File has been successfully Imported.";
    } else {
        echo "Error: Please Upload only CSV File";
    }
}
?>

这是表格代码

<form enctype="multipart/form-data" method="post" action="import_csv.php">
    <input type="file" name="file" id="file">
    <input type="submit" value="submit">
</form>

我没有找到我错的地方

谁能帮帮我

提前谢谢..

【问题讨论】:

  • 你有什么错误吗?
  • 不,它也没有显示任何错误..你能帮我吗?我正在尝试从过去 6 小时开始这样做..但我无法得到结果
  • mysql_* 函数自 PHP 5.5.0 起已弃用,并从 PHP 7.0.0 起删除。将您的代码切换为使用PDOmysqli。请务必使用准备好的语句/参数绑定,这样您就不必担心任何引用问题。
  • 是的,好吧,我会使用 mysqli,只有当这个功能有效时,我才会使用 moodle 函数..所以所有插入代码都会改变..我只是想先使用他的功能
  • 你得到任何输出,还是只是一个空白屏幕?

标签: php mysql csv


【解决方案1】:

我创建了一个简单的应用程序来导入 CSV,它还支持使用 Laravel 框架、PHP Excel Lib 和 Laravel Excel Lib 的东方语言,

如果你想看,我可以推送到 Github

【讨论】:

  • 是的,请推送到github
猜你喜欢
  • 1970-01-01
  • 2011-04-16
  • 2017-01-21
  • 1970-01-01
  • 2013-09-25
  • 2017-04-06
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多