【问题标题】:Upload CSV file into MySQL database (error)将 CSV 文件上传到 MySQL 数据库(错误)
【发布时间】:2016-12-08 12:23:10
【问题描述】:

我正在尝试将 CSV 文件插入 MySql,但出现错误。

警告:mysql_real_escape_string() 期望参数 1 是字符串,

我的数据库表是:

:s_no    :name    :id   :
:1       :Lim     :678  :
:2       :Mary    :623  :
:3       :Mimi    :4124 :

数字是 AUTO_INCREMENT,我只想要名称和 ID。

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

  if(isset($_POST["submit"]))
  {
    if($_FILES['file']['name'])
    {
      $filename = explode('.',$_FILES['file']['name']);
      if ($filename[1] == 'csv')
      {
        $handle = fopen($_FILES['file']['tmp_name'], "r");
        while ($data = fgetcsv($handle))
        {
          $item1 = mysql_real_escape_string($connect, $data[0]);
          $item2 = mysql_real_escape_string($connect, $data[1]);
          $sql="INSERT into student( s_no, name, id) value ('','$item1','$item2')";
          mysql_query($connect, $sql);
        }
        fclose($handle);

        print "Done";
      }
    }
  }

?>
<html>
  <head></head>
  <body>
    <form method="post" enctype="multipart/form-data">
      <div>
        <p>Upload CSV: <input type="file" name="file" /></p>
        <p><input type="submit" name="submit" value="Import" /></p>
      </div>
    </form>
  </body>
</html>

【问题讨论】:

  • 缺少表单操作
  • 我没有得到这一行'“数字”是AUTO_INCREMENT,所以我想改为仅使用名称和ID”。请解释一下。
  • “s_no”是 AUTO_INCREMENT,所以我只想改为 Name And ID。在数据库中,字段“s_no”是自动生成的。我只需要在 name 和 id 字段中代替。

标签: javascript php mysql csv


【解决方案1】:

连接是第二个参数。

mysql_real_escape_string( $data[0], $connect);

还要记住它是一个已弃用的函数

http://php.net/manual/en/function.mysql-real-escape-string.php

【讨论】:

  • 好吧.. 我做到了。没有错误。但数据仍然没有。知道我能做什么吗??
【解决方案2】:

试试这个

 mysql_real_escape_string("string")

意思

mysql_real_escape_string($data[0]);

【讨论】:

  • 好吧.. 我做到了。没有错误。但数据仍然没有。知道我能做什么吗??
【解决方案3】:

如果你使用的是 mysqli 那么

mysqli_real_escape_string($connect,$data[0]);

如果你使用 mysql

mysql_real_escape_string( $data[0]);

【讨论】:

  • 好吧.. 我做到了。没有错误。但数据仍然没有。知道我能做什么吗??
猜你喜欢
  • 1970-01-01
  • 2017-09-04
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2014-03-27
  • 2013-08-15
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多