Помогите исправить ошибку синтаксиса в запросе.

Статус
В этой теме нельзя размещать новые ответы.

Kostya\spb

Новичок
Помогите исправить ошибку синтаксиса в запросе.

Есть запрос:
Пишу так все нормально:
$query=@mysql_query("SELECT * FROM ar WHERE ar REGEXP '^[$alf[$l]]' ORDER BY ar") or exit("MySQL");

Хочу написать так:
$query=@mysql_query("SELECT * FROM ar WHERE ar REGEXP '^[$alf[$_GET['$l']]]' ORDER BY ar") or exit("MySQL");

Но вылазиет ошибка
Parse error: parse error, unexpected '[', expecting ']' in C:\server\www\list.php on line 8

Я канешно врубаюсь что ошивка в '^[$alf[$_GET['$l']]]'
Но как убрать ошибку. Может по другому что-то написать. Вообще посоветуйте!
 

master_x

Pitavale XXI wieku
У тебя запрос абсолютно неправильный. По-моему должно быть что-то типа (опять же зависит от того, что ты действительно хочешь):
mysql_query("SELECT ar FROM
WHERE ar REGEXP '^[".$alf[$_GET[$l]]."]' ORDER BY ar")

Где
- твоя таблица

-~{}~ 05.07.05 23:53:

Да и действительно, почитай все то, что тебе дал SelenIT
 

Kostya\spb

Новичок
У меня таблица ar называется и в ней есть поле ar

-~{}~ 06.07.05 00:00:

1. Статью читал много раз
2. На счет сабак я знаю
3. И мускуль ерор тоже. но мне надо в запросе чтобы просто сообщашка вывелась.
4. А вот на счет выносить, примерчик бы! Или как вообще лучше сделать?
 

master_x

Pitavale XXI wieku
Ну тогды юзай как прежде, только так, как написанно здесь:
"...REGEXP '^[".$alf[$_GET[$l]]."]'..."
 

alexhemp

Новичок
$query = mysql_query("SELECT * FROM ar WHERE ar REGEXP '^".[$alf[$_GET[$l]]]."' ORDER BY ar") or trigger_error($mysql_error());

А вообще полезно сперва вывести запрос, а потом исполнять.
 

Kostya\spb

Новичок
Извиняюсь перед всеми. Я немного ошибся.
У меня ошибку выдавало выше!

Вот на этом:
$list="$alf[$_GET['$l']]";
 

Konstantin

Новичок
Наверное поможет:
$list="{$alf[$_GET['$l']]}";

А так ли необходимо преобразование значения из массива в строковую переменную?
 

itprog

Cruftsman
alexhemp, почему у тебя ".[$alf[$_GET[$l]]]." ? это вообще не будет работать, т.к. первые [] относятся к регулярному выражению. "$mysql_error()" что за функция новая такая?

-~{}~ 06.07.05 00:10:

Kostyaspb, $l=3; echo '$l';
 

itprog

Cruftsman
ps: почему так много новичков пишут что-то типа $a = "$i", мне эти кавычки с самого начала не нравились в таких случаях, я их не ставил, но только через недели две понял что правильно делаю..
 

Фанат

oncle terrible
Команда форума
топик опять превращается в непринуждённую беседу.
Kostyaspb фак http://phpfaq.ru/debug тебе бфл дан не для того, чтобы ты отмахнулся и сказал, что всё знаешь.
про собак тебе написали не для того, чтобы ты пропустил мимо ушей.
про $l=3; echo '$l'; тебе написали не для того, чтобы ты спрашивал.
а чтобы сделал.
поэтому пойди и займись делом. а чтобы поболтать - найди себе чат какой-нибудь
 
Статус
В этой теме нельзя размещать новые ответы.
Сверху