php读取txt写入mysql如何实现? 30
我的数据大约有10000多,但是都是同一字段(code),我想把这些数据导入数据表(table)中的code字段,表还包含其他的字段(stat,keytime..)不知道...
我的数据大约有10000多,但是都是同一字段(code),我想把这些数据导入数据表(table)中的code字段,表还包含其他的字段(stat,keytime..)不知道如何和其他字段一起导入?
数据文件内容格式是 qweqweqw|asdasdda|asdqwe|.... 以'|'分割 就是说每两个'|'之间为一条记录中的code字段的一个数据, stat值为 1 keytime值为 0 ,谢谢了
下面是一个代码,但是和我不大相符,就不会了 哪位高手给个详细的 比较符合的 谢谢了
<?php
$file_dir="1.txt"; //这里我想换成 <input type="file" name="filep" id="filep"> 获取的路径不知道可以不?
$fp=fopen($file_dir,"r");
$content=fread($fp,filesize($file_dir));//读文件
fclose($fp);
function replaces($str)//为各字段添加''
{
foreach($str as $k=>$v)
{
$str[$k]="'".trim($v)."'";
}
return $str;
}
function Get_item($tmp1,$tmp2,$cont,$sq)//取得sql语句;tmp1为记录分割点,tmp2为字段分割点
{
$tmp_rows=explode($tmp1,$cont);
foreach($tmp_rows as $key=>$value)
{
$tmp_rows2[$key]=replaces(explode($tmp2,trim($value)));
$sql[$key]=$sq.implode(",",$tmp_rows2[$key]).")\"";
}
return $sql;
}
$sq="\"insert into table1 (a1,a2,a3) values (";//sql的前半部分,要完善!
$sql=array();
$sql=Get_item("-"," ",$content,$sq);
//$db=mysql_connect("localhost","root","abc");//联接mysql,自己加
//mysql_select_db(....
foreach($sql as $v)
{
mysql_query($v);//执行sql;
}
//mysql_close($db);
?>
能不能读取非服务器文件 而读取本地计算机上的文件? 展开
数据文件内容格式是 qweqweqw|asdasdda|asdqwe|.... 以'|'分割 就是说每两个'|'之间为一条记录中的code字段的一个数据, stat值为 1 keytime值为 0 ,谢谢了
下面是一个代码,但是和我不大相符,就不会了 哪位高手给个详细的 比较符合的 谢谢了
<?php
$file_dir="1.txt"; //这里我想换成 <input type="file" name="filep" id="filep"> 获取的路径不知道可以不?
$fp=fopen($file_dir,"r");
$content=fread($fp,filesize($file_dir));//读文件
fclose($fp);
function replaces($str)//为各字段添加''
{
foreach($str as $k=>$v)
{
$str[$k]="'".trim($v)."'";
}
return $str;
}
function Get_item($tmp1,$tmp2,$cont,$sq)//取得sql语句;tmp1为记录分割点,tmp2为字段分割点
{
$tmp_rows=explode($tmp1,$cont);
foreach($tmp_rows as $key=>$value)
{
$tmp_rows2[$key]=replaces(explode($tmp2,trim($value)));
$sql[$key]=$sq.implode(",",$tmp_rows2[$key]).")\"";
}
return $sql;
}
$sq="\"insert into table1 (a1,a2,a3) values (";//sql的前半部分,要完善!
$sql=array();
$sql=Get_item("-"," ",$content,$sq);
//$db=mysql_connect("localhost","root","abc");//联接mysql,自己加
//mysql_select_db(....
foreach($sql as $v)
{
mysql_query($v);//执行sql;
}
//mysql_close($db);
?>
能不能读取非服务器文件 而读取本地计算机上的文件? 展开
1个回答
展开全部
试试看我这个程序:
<?php
if ($db=mysql_connect("localhost","root","abc"))//千万写正确的用户和密码哦
{
mysql_select_db('数据库名称');//必须修改哦
foreach (explode('|',file_get_contents('1.txt')) as $code){
$sql="insert into table1 (code,stat,keytime) values ('$code',1,0)";
if (mysql_query($sql)) echo "成功:$sql\n";
else {echo "失败:$sql:".mysql_error();break;}
}
mysql_close();
} else echo '连接数据库失败:'.mysql_error();
?>
应该没有问题,如果你运行不了,请粘贴运行后的界面。
<?php
if ($db=mysql_connect("localhost","root","abc"))//千万写正确的用户和密码哦
{
mysql_select_db('数据库名称');//必须修改哦
foreach (explode('|',file_get_contents('1.txt')) as $code){
$sql="insert into table1 (code,stat,keytime) values ('$code',1,0)";
if (mysql_query($sql)) echo "成功:$sql\n";
else {echo "失败:$sql:".mysql_error();break;}
}
mysql_close();
} else echo '连接数据库失败:'.mysql_error();
?>
应该没有问题,如果你运行不了,请粘贴运行后的界面。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询