Ошибка синтаксиса, неожиданный T_CONSTANT_ENCAPSED_STRING в PHP

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";

в приведенном выше коде в строке запроса i.e строка в стороне mysql_quey

мы получаем следующую ошибку

Parse error: syntax error, unexpected T_CONSTANT_ENCAPSED_STRING in C:\wamp\www\samples\mysql_excel\exel_outfile.php on line 8

в строке запроса '\n' чартер не идентифицируется как строка, поэтому ошибка при получении ошибки

Ответ 1

Вам нужно избежать двойной кавычки как: \" вместо ""

$result=mysql_query("select * from jos_users INTO OUTFILE 'users.csv' FIELDS ESCAPED BY '\"' TERMINATED BY ',' ENCLOSED BY '\"' LINES TERMINATED BY '\n' ");

Неэкранированный " преждевременно завершает строку.

Пример:

Это неверно: "A " is a double quote"
Это верно: "A \" is a double quote"