!!###@# 一次性的导入有规率的数据到表中,不知道怎样弄 (解决即刻结帖,100分相送) 不好意思,大哥,我写漏了表的结构LinkID int(4) auto_incrementlinkName varchar(40)LinkUrl varchar(100)LinkDepict text 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 用delphi写一个小程序,把txt一行行的读进来插库很容易的 我不会delphi,用php就不能实现吗? 自己写一个小程序就是了<?php $dataArray = file( $fileName ); foreach( $dataArray as $recrod ) { $fields = explode("|", $record); $sql = "INSERT INTO tblname values('','" . join("','", $fields) ."')"; mysql_query($sql); if(mysql_affected_rows()) echo "数据导入成功"; } ?> <?php $dataArray = file( $fileName ); foreach( $dataArray as $record ) { $fields = explode("|", $record); $sql = "INSERT INTO tblname values('','" . join("','", $fields) ."')"; mysql_query($sql); if(mysql_affected_rows()) echo "数据导入成功"; } ?> <?php$lspath="files"."/".$file_name;if (file_exists($lspath)) unlink($lspath);if(copy($file,$lspath)) { $m=date('Y-m-d'); //***************** Read TEXT file and insert into database ***************************** if($fd = fopen($lspath, "r")) { while ($buffer = fgets($fd, 4096)) { $buffer=str_replace(";", ";",$buffer ); $buffer=strtoupper($buffer); $field_array=split(";",$buffer); $sql="insert DB(linkName,LinkUrl,LinkDepict) values('".$field_array[0]."','".$field_array[0]."','".$field_array[0]."'"); $query=mssql_query($sql); if(mssql_query($str_tm)) echo "数据导入成功"; else echo "数据导入失败"; } fclose($fd); } }else echo "打开文件失败了,哈哈!<br>"; mssql_close($link);//***************************************************************************************?> 将上面脚本 $buffer=str_replace(";", ";",$buffer );$buffer=strtoupper($buffer);$field_array=split(";",$buffer);中的“;”用“|”替换一下! $text = file_get_contents("文本数据文件名");$s = "('".preg_replace(array("/ *\| */","/[\r\n]+/"),array("','","'),('"),AddSlashes($text))."')";mysql_connect();mysql_select_db("test");mysql_query("insert into tbl_name () values $s"); 呵呵,手快了:)mysql_query("insert into tbl_name (linkName,LinkUrl,LinkDepict) values $s"); 修正一下,上面的是我曾用过的,没仔细改,下面是改过的!<?php$lspath="files"."/".$file_name;if (file_exists($lspath)) unlink($lspath);if(copy($file,$lspath)) { //********* Read TEXT file and insert into database ********** if($fd = fopen($lspath, "r")) { while ($buffer = fgets($fd, 4096)) { $field_array=split("|",$buffer); $sql="insert DBtablename(linkName,LinkUrl,LinkDepict) "; $sql=$sql." values('$field_array[0]','$field_array[1]','$field_array[2]')"; if(mssql_query($str)) echo "数据导入成功"; else echo "数据导入失败"; } fclose($fd); } }else echo "打开文件失败了,哈哈!<br>"; mssql_close($link);//**************************************************************//用MySQL时就把MSSQL改成Mysql就行了;//$file是上一个提交页传来的file控件。?> to: ice_berg16(寻梦的稻草人) 你的方法我没弄成功to: plby(北飞雪) 你的方法我适当改了一下,OKto: 唠叨大哥 你的方法$s多输出了一串",('')", 去了就对了结帖了! LOAD DATA INFILE 'd:\data\data.txt' INTO TABLE table2 FIELDS TERMINATED BY ' | ';这样子更好。data.txt文件用绝对路径 php正则提取数据 这样的参数是如何接受的? php搜索结果分页问题 在不同目录下可以用相同类名继承基类 是吗? php如何刷新某个网页? Apache+花生壳+win2K=====如何配置,急急急!!!! 求未加密的网站php源代码 做一个在线的问卷调查,谁做过?请指点一下,多谢。 欲哭无泪,刚学PHP,困难重重 这个ruturn该怎样写? 什么函数,可以判断一个字符串是否为正确的时间? 如何删除用正则表达式来删除最初的空行?
<?php $dataArray = file( $fileName );
foreach( $dataArray as $recrod )
{
$fields = explode("|", $record);
$sql = "INSERT INTO tblname values('','" . join("','", $fields) ."')";
mysql_query($sql);
if(mysql_affected_rows())
echo "数据导入成功";
}
?>
foreach( $dataArray as $record )
{
$fields = explode("|", $record);
$sql = "INSERT INTO tblname values('','" . join("','", $fields) ."')";
mysql_query($sql);
if(mysql_affected_rows())
echo "数据导入成功";
}
?>
unlink($lspath);
if(copy($file,$lspath))
{
$m=date('Y-m-d');
//***************** Read TEXT file and insert into database *****************************
if($fd = fopen($lspath, "r"))
{
while ($buffer = fgets($fd, 4096))
{
$buffer=str_replace(";", ";",$buffer );
$buffer=strtoupper($buffer);
$field_array=split(";",$buffer);
$sql="insert DB(linkName,LinkUrl,LinkDepict) values('".$field_array[0]."','".$field_array[0]."','".$field_array[0]."'");
$query=mssql_query($sql);
if(mssql_query($str_tm))
echo "数据导入成功";
else
echo "数据导入失败";
}
fclose($fd);
}
}
else
echo "打开文件失败了,哈哈!<br>";
mssql_close($link);
//***************************************************************************************?>
$buffer=str_replace(";", ";",$buffer );
$buffer=strtoupper($buffer);
$field_array=split(";",$buffer);中的“;”用“|”替换一下!
$s = "('".preg_replace(array("/ *\| */","/[\r\n]+/"),array("','","'),('"),AddSlashes($text))."')";
mysql_connect();
mysql_select_db("test");
mysql_query("insert into tbl_name () values $s");
mysql_query("insert into tbl_name (linkName,LinkUrl,LinkDepict) values $s");
unlink($lspath);
if(copy($file,$lspath))
{
//********* Read TEXT file and insert into database **********
if($fd = fopen($lspath, "r"))
{
while ($buffer = fgets($fd, 4096))
{
$field_array=split("|",$buffer);
$sql="insert DBtablename(linkName,LinkUrl,LinkDepict) ";
$sql=$sql." values('$field_array[0]','$field_array[1]','$field_array[2]')";
if(mssql_query($str))
echo "数据导入成功";
else
echo "数据导入失败";
}
fclose($fd);
}
}
else
echo "打开文件失败了,哈哈!<br>";
mssql_close($link);
//**************************************************************
//用MySQL时就把MSSQL改成Mysql就行了;
//$file是上一个提交页传来的file控件。
?>
你的方法我没弄成功to: plby(北飞雪)
你的方法我适当改了一下,OKto: 唠叨大哥
你的方法$s多输出了一串",('')", 去了就对了结帖了!
这样子更好。data.txt文件用绝对路径