首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >fopen php mysql导入- sql中的空行

问fopen php mysql导入- sql中的空行
EN

Stack Overflow用户
提问于 2015-11-14 22:15:20
回答 1查看 186关注 0票数 0

我使用下面指定的代码通过php和fopen将txt文件导入mysql。它按预期从我的txt文件中导入所有数据行,但是无论txt文件包含什么,我的脚本总是为列数据2添加一个额外的非预期行和一个空白字段。我检查了txt文件,最后没有空格或空格。

代码语言:javascript
复制
mysql_connect("$dbhost", "$dbuser", "$dbpasswd") or die(mysql_error());
mysql_select_db("$dbname") or die(mysql_error());

$f = fopen("import.txt", "r");
while(!feof($f)) 
{
    $data = explode(" ", fgets($f));

    $data1 = 'foobar';
    $inputkey = $data[0];

    mysql_query("INSERT INTO `reviewdata` (data1, data2)
        VALUES ('$data1', '$inputkey')") or die(mysql_error());
}
fclose($f);
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2015-11-14 22:26:50

试试下面的代码。还可以看一看similar question。这个问题解释了为什么使用feof是错误的。

代码语言:javascript
复制
mysql_connect("$dbhost", "$dbuser", "$dbpasswd") or die(mysql_error());
mysql_select_db("$dbname") or die(mysql_error());

$f = fopen("import.txt", "r");
while(($data = fgets($f)) !== false) 
{
    $data = explode(" ", $data);

    $data1 = 'foobar';
    $inputkey = trim($data[0]);

    mysql_query("INSERT INTO `reviewdata` (data1, data2)
        VALUES ('$data1', '$inputkey')") or die(mysql_error());
}

fclose($f);
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/33714044

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档