[英]Import txt file into mysql table using php
我有包含數據的文本文件。 文本文件中的每一行包含 12 個由空格分隔的數據。 我想將相同的數據導入到 mysql 表中,每個數據都轉到相應的字段。 數據應附加到表中。 我知道如何使用 html 表單附加數據,但不知道文件操作。 有什么建議?
嘗試這個
$f = fopen("your_text_file.txt", "r");
while(!feof($f)) {
$data = explode(" ", fgets($f));
$date = $data[0];
$avgprd = $data[1];
$level1 = $data[2];
$level2 = $data[3];
$level3 = $data[4];
$level4 = $data[5];
$level5 = $data[6];
$level6 = $data[7];
$level7 = $data[8];
$level8 = $data[9];
$level9 = $data[10];
$level10 = $data[11];
$level11 = $data[12];
mysql_query("INSERT INTO `your_table_name` (date, avgprd, level1, level2, level3, level4, level5, level6, level7, level8, level9, level10, level11)
VALUES ('$date', '$avgprd', '$level1', '$level2', '$level3', '$level4', '$level5', '$level6', '$level7', '$level8', '$level9', '$level10', '$level11')") or die(mysql_error());
}
fclose($f);
if(isset($_POST['Import'])){
$file= $_FILES['fimport']['tmp_name'];
$handle=fopen($file,'r');
while(($fileop=fgetcsv($handle,1000,","))!=false){
$name=$fileop[0];
$email=$fileop[1];
$userid=$this->session->userdata('id');
$this->db->query("insert into usersemail(user_name,user_email,user_id)values('$name','$email','$userid')");
}
查看Mysql中的LOAD DATA INFILE。 http://dev.mysql.com/doc/refman/5.1/en/load-data.html
在 Mysql 或 php 代碼中使用 LOAD DATA INFILE 作為示例:
$f = fopen("yourfile.txt", "r");
while(!feof($f)) {
$data = explode(" ", fgets($f));
mysql_query("INSERT INTO some_table (some_data0, some_data1) values (" . $data[0] . ", " . $data[1] . ")");
}
fclose($f);
嘗試這個...
$file = $_FILES['frmUpload']['tmp_name']; // Get Temporary filename
if ($file) {
$handle = fopen($file,"r"); // Open the file and read
while($strBookData = fgetcsv($handle, 10000, " ")) {//To get Array from CSV, " "(delimiter)
$strDatas[] = $strBookData;
$strTableColumn = count($strBookData); // To Get Column count
}
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.