我试图使用PHP在本地加载一个文本文件到MySQL数据库。数据文件如下所示:
Device Name|DE:VI:CE:MAC:AD:DR:ES:SS|1376493754086|1376493754086
有许多行数据的格式与上面完全相同。
我正在尝试将这些数据加载到一个预先建立的表中,像这样:
$file = @fopen("LOCAL_data_file.txt","r");
$values = '';
while(!feof($file))
{
$con=mysqli_connect("127.0.0.1","root","password","my_db");
if(mysqli_connect_errno()){
echo "Error connecting to my_db: " . mysqli_connect_error();
}
$buffer = fgets($file, 4096);
list($a,$b,$c,$d)=explode("|",$buffer);
/*echo $a;
echo $b;
echo $c;
echo $d;*/
$ins="INSERT INTO 'tablet3' (Name, Address, StartTime, EndTime) VALUES
($a,$b,$c,$d)";
mysqli_query($con,$ins);
}
数据可以很好地从文件中读取,因为如果我对列表变量的回显进行反补,它将回显表中的所有数据。如果我不运行插入查询,表被创建与适当的列"名称|地址|开始时间|结束时间",但与插入查询,代码返回一个表与空数据。我简直不知道我做错了什么。
我重新创建了它这就是我要使用的查询
假设数据库结构为:
Name(varchar or text) Address(varchar or text) StartTime(int) EndTime(int)
查询:
$ins="INSERT INTO `tablet3` (Name, Address, StartTime, EndTime) VALUES
('$a','$b',$c,$d)";
注意$a和$b周围的引号。还有table3周围的勾号。
注:在表名周围不需要任何东西