我試圖用PHP腳本將CSV導入到MySQL表中。此SQL命令成功將CSV文件導入到SQL表中:使用PHP將CSV加載到MySQL表中
mysql> LOAD DATA LOCAL INFILE 'property_re_1.csv'
-> REPLACE INTO TABLE `markers`
-> FIELDS TERMINATED BY ',' OPTIONALLY ENCLOSED BY '"' ESCAPED BY '\\'
-> LINES TERMINATED BY '\n' IGNORE 1 LINES;
Query OK, 315 rows affected (0.01 sec)
Records: 315 Deleted: 0 Skipped: 0 Warnings: 0
現在我想將此SQL命令轉換爲PHP腳本。這是我在寫PHP腳本嘗試:
<?PHP
$dbhost = 'localhost';
$dbuser = 'myusername';
$dbpasswd = 'mypassword';
$db = "db_markers";
$dbh = mysql_connect($dbhost, $dbuser, $dbpasswd) or die("Unable to connect to SQL server");
$my_db = @mysql_select_db($db, $dbh) or die("Unable to select database");
$file = $_SERVER['DOCUMENT_ROOT']."/path/property_re_1.csv";
$result=mysql_query("LOAD DATA LOCAL INFILE '$file' REPLACE INTO TABLE `markers` FIELDS TERMINATED BY ',' OPTIONALLY ENCLOSED BY '"' ESCAPED BY '\\' LINES TERMINATED BY '\n' IGNORE 1 LINES");
?>
這個腳本會產生錯誤:
HTTP Error 500 (Internal Server Error): An unexpected condition was encountered while the server was attempting to fulfill the request.
錯誤日誌上寫着:
[18-Dec-2012 12:37:38] PHP Parse error: syntax error, unexpected T_CONSTANT_ENCAPSED_STRING in /path/testconnect.php on line 13
$ result變量被稱爲上線13,所以錯誤必須在其中。
我不知道這個錯誤的原因是什麼。任何幫助是極大的讚賞!
你看過你的日誌文件嗎? – dualed
是的,這裏是日誌錯誤:[18-Dec-2012 12:37:38] PHP解析錯誤:語法錯誤,第13行/path/testconnect.php中出現意外的T_CONSTANT_ENCAPSED_STRING。$ result變量在行13. – AME
像我想的那樣啊。你明白錯誤的含義嗎? – hakre