"неожиданный T_VARIABLE" при создании строки? - PullRequest
0 голосов
/ 15 декабря 2011

Я смотрю на это уже 20 минут, и я не могу понять, что я делаю неправильно.

//Create query
$qry="SELECT * FROM members WHERE member_id='"$_SESSION['SESS_MEMBER_ID']"'";
$result=mysql_query($qry);

Ошибка разбора: синтаксическая ошибка, неожиданный T_VARIABLE в /home/dkitterm/public_html/test2/member-profile.php в строке 24

Ответы [ 5 ]

5 голосов
/ 15 декабря 2011

Вам необходимо объединить строковые литералы с переменной с оператором .:

$qry = "SELECT * FROM members WHERE member_id='" . $_SESSION['SESS_MEMBER_ID'] . "'";
1 голос
/ 15 декабря 2011

Менее громоздкий подход использует интерполяцию строк. Вы уже в строке в двойных кавычках, так почему бы не использовать одну особенность?

$qry="SELECT * FROM members WHERE member_id='{$_SESSION['SESS_MEMBER_ID']}'";

Это гораздо меньше и меньше места для синтаксических ошибок.
Смотри также http://php.net/manual/en/language.types.string.php#language.types.string.syntax.double (Существует даже более короткий синтаксис, если вы читаете дальше.)

1 голос
/ 15 декабря 2011

Вам нужно объединить вашу строку:

$qry = "SELECT * FROM members WHERE member_id='" . $_SESSION['SESS_MEMBER_ID'] . "'";
0 голосов
/ 15 декабря 2011
$qry="SELECT * FROM members WHERE member_id='" . $_SESSION['SESS_MEMBER_ID'] . "'";

Вы должны сосредоточить свои струны с. оператор

0 голосов
/ 15 декабря 2011

Измените его на:

 //Create query
 $qry="SELECT * FROM members WHERE member_id='" . $_SESSION['SESS_MEMBER_ID'] . "'";
 $result=mysql_query($qry);

Вы забыли оператор конкатенации, .

...