mysql_connect("localhost","root","");
mysql_select_db("hitnrunf_db");
$result=mysql_query("select * from jos_users INTO OUTFILE 'users.csv' FIELDS ESCAPED BY '""' TERMINATED BY ',' ENCLOSED BY '"'
LINES TERMINATED BY '\n' ");
header("Content-type: text/plain");
header("Content-Disposition: attachment; filename=your_desired_name.xls");
header("Content-Transfer-Encoding: binary");
header("Pragma: no-cache");
header("Expires: 0");
print "$header\n$data";
in the above code in query string i.e string in side mysql_quey
在上面的代碼中查詢字符串i。e邊的字符串mysql_quey
we are getting following error
我們有以下錯誤
Parse error: syntax error, unexpected T_CONSTANT_ENCAPSED_STRING in C:\wamp\www\samples\mysql_excel\exel_outfile.php on line 8
in query string '\n' charter is not identifying as string thats why above error getting
在查詢字符串“\n”中,沒有標識為字符串,這就是為什么上面錯誤得到的原因。
1 个解决方案
#1
7
You need to escape the double quote as: \" instead of ""
你需要將雙引號轉義為:\“而不是”
$result=mysql_query("select * from jos_users INTO OUTFILE 'users.csv' FIELDS ESCAPED BY '\"' TERMINATED BY ',' ENCLOSED BY '\"' LINES TERMINATED BY '\n' ");
An un-escaped " will prematurely terminate the string.
未轉義的“將提前終止字符串。
Example:
例子:
This is incorrect: "A " is a double quote"
This is correct: "A \" is a double quote"
這是不正確的:"A "是雙引號"這是正確的:"A \"是雙引號"