Регистрация
Регистрируясь, вы подтверждаете свое согласие с соглашением об использовании персональных данных.
Восстановление пароля
03.02.2011, 13:05
Гость
Гость

Весь мозг сломал:
по какой-то причине не работает (не выводит изображение) такая конструкция:
Код:
".listQuery("SELECT  `itemTitle` AS Name, `PhotoSmall` AS Img, `Message_ID`
FROM `Message105` WHERE `Subdivision_ID` =$sub",
"\$data[Name] - \$data[Message_ID]
(img src='".nc_file_path(105,$data[Message_ID],$data[Img])."')")."

Если указать $data[Message_ID] явно, т.к. числом, фото выводится. Также выводится сама переменная. Что делаю не так?

P.S. Тег img в круглых скобках, чтобы его не порезало на форуме
03.02.2011, 14:16
DiGGy
DiGGy
DiGGy

Зарегистрирован:
2005-04-04
Сообщений: 1546

А как вы думаете - в какой момент у вас выполнится ф-я nc_file_path?

Она сначала выполнится и только потом результат выполнения передастся в listQuery на исполнение!
Вызов nc_file_path надо также экранировать как и передаваемые ей параметры.

Temet nosce...
03.02.2011, 14:25
Гость
Гость

Простите, а как ее экранировать?
Код:
src='\".nc_file_path(105,$data[Message_ID],$data[Img]).\"'

так не работает.
03.02.2011, 17:04
DiGGy
DiGGy
DiGGy

Зарегистрирован:
2005-04-04
Сообщений: 1546

Цитата:
Вызов nc_file_path надо также экранировать как и передаваемые ей параметры


Код:
src='\".nc_file_path(105,\$data[Message_ID],\$data[Img]).\"'


зы. если одинарный слеш "\" не получится, то попробуйте тройной "\\\"

Temet nosce...
03.02.2011, 17:48
Гость
Гость

Экранирую, как вы сказали:
Код:
".listQuery("SELECT *
FROM `Message105`
WHERE `Subdivision_ID` =$sub
", "[div style='float:left'][strong]\$data[itemTitle][/strong][br]
[img src='\".nc_file_path(105,\$data[Message_ID],'PhotoSmall').\"'][/div]")."


В итоге, фото все равно не выводится. В теге img получаю следующее: src='/netcat_files/_5.jpg' вместо пути вида: /netcat_files/1111_5.jpg.
03.02.2011, 23:01
DiGGy
DiGGy
DiGGy

Зарегистрирован:
2005-04-04
Сообщений: 1546

А если вызвать отдельно ".nc_file_path(105,тут_ид_записи_компонента,'PhotoSmall')." - что выдаст?

И какой тип файловой системы у поля PhotoSmall?

Temet nosce...
14.02.2011, 14:37
Гость
Гость

3 параметр кривой, там название поля в базе должно быть, ну или как вы переменную обозвали (скорей всего Img), а не $data[Img]
14.02.2011, 14:39
Гость
Гость

и со вторым такие же чудеса
198 196 2011-02-14 14:39:01 11007
Описание проекта