VBsupport перешел с домена .ORG на родной .RU
Ура!
Пожалуйста, обновите свои закладки - VBsupport.ru
Блок РКН снят, форум доступен на всей территории России, включая новые терртории, без VPN
На форуме введена премодерация ВСЕХ новых пользователей
Почта с временных сервисов, типа mailinator.com, gawab.com и/или прочих, которые предоставляют временный почтовый ящик без регистрации и/или почтовый ящик для рассылки спама, отслеживается и блокируется, а так же заносится в спам-блок форума, аккаунты удаляются
Если вы хотите приобрести какой то скрипт/продукт/хак из каталогов перечисленных ниже: Каталог модулей/хаков
Ещё раз обращаем Ваше внимание: всё, что Вы скачиваете и устанавливаете на свой форум, Вы устанавливаете исключительно на свой страх и риск.
Сообщество vBSupport'а физически не в состоянии проверять все стили, хаки и нули, выкладываемые пользователями.
Помните: безопасность Вашего проекта - Ваша забота. Убедительная просьба: при обнаружении уязвимостей или сомнительных кодов обязательно отписывайтесь в теме хака/стиля
Спасибо за понимание
Добрый вечер, ребят помогите разобраться, в шаблоне postbit_attachment нужно вывести 2 дополнительных значений взятых из базы из таблицы атачей.
Что я делаю, к запросу в файле showthread.php добавил выборку этих самых переменных
Code:
$attachments = $db->query_read("
SELECT dateline, thumbnail_dateline, filename, filesize, visible, attachmentid, counter, imagecost,
postid, IF(thumbnail_filesize > 0, 1, 0) AS hasthumbnail, thumbnail_filesize, vipdown, freedown,
attachmenttype.thumbnail AS build_thumbnail, attachmenttype.newwindow
FROM " . TABLE_PREFIX . "attachment
LEFT JOIN " . TABLE_PREFIX . "attachmenttype AS attachmenttype USING (extension)
WHERE postid IN (-1" . $ids . ")
ORDER BY attachmentid
");
в самом шаблоне вывожу их переменными $attachment[vipdown] и $attachment[freedown] соответсвенно
но увы вывода нету.. переменные оказываются пустыми, в то время как таже переменная $attachment[counter] или $attachment[imagecost] - содержат нужное значение..
Как так может быть? Что я упускаю?
Заранее благодарю за любые толчки в правильном направлении.
Андрюшкин, тебе надо получать эти значения в цикле
while($array_result = $vbulletin->db->fetch_array($attachments))
{
$твоя_переменная = $array_result['imagecost'];
вывести в шаблон
}
или в цикле собрать массив и потом из него брать значения для шаблона.
Так как ты хочешь можно сделать только при $db->query_first(), тогда выводится сразу массив, так как набор значений только один.
SMak044, вот смотрите может я просто чего-то недопонимаю, уже обращался к нескольким гуру, но проблема не решена..
запрос который я дал в первом посте - это стандартный вобловский запрос для получения информации об атачах в посте. Я в этот запрос просто добавил еще 2 дополнительных поля vipdown и freedown (выделил эти поля жирным в запросе в первом посте)
далее массив обрабатывается все теми же стандартными средствами воблы (т.е. здесь я ничего не изобретал)
while($attachment = $vbulletin->db->fetch_array($attachments))
{
....
получаем массив attachment
который непонятно как наполнен, т.е. в нем есть все значения выборки, кроме моих добавленных двух полей, как так?
т.е.
$attachment[imagecost] = 3,33
$attachment[dateline] = 1232121654
и т.д.
но
$attachment[vipdown] и $attachment[freedown] - ничему не равны, они просто пусты, даже не ноль ((
почему так - главный вопрос..
п.с. отблагодарю любого кто поможет дельным советом, очень нужно разобраться в этом.
kerk
k0t
Join Date: May 2005
Location: localhost
Posts: 28,712
Версия vB: 3.8.x
Пол:
Reputation:
Гуру 20257
Репутация в разделе: 8432
2
каким образом добавляется в запрос выборка нужных полей из БД?
редактирование файла?
через хук?
как?
==
потом...
значения этих полей точно не пустые в таблице вложений?
тип поля? (строка, целое число, текст, ???)
дефолтное значение поля в таблице какое?
в зависимости от выбранного типа можно поставить значение по умолчанию
какое значение?
==
как добавляются данные в эти поля?
@SMak044
Эксперт
Join Date: May 2008
Награды в конкурсах:
Posts: 1,764
Версия vB: 3.8.4
Пол:
Reputation:
Expert 1705
Репутация в разделе: 1190
0
Андрюшкин, К вопросам kerk, даже добавить нечего...
Андрюшкин, К вопросам kerk, даже добавить нечего...
можно. эти поля в бд вообще есть?))
kerk
k0t
Join Date: May 2005
Location: localhost
Posts: 28,712
Версия vB: 3.8.x
Пол:
Reputation:
Гуру 20257
Репутация в разделе: 8432
2
Quote:
Originally Posted by m0rbid
эти поля в бд вообще есть?
скорей всего, есть, раз ТС пытается вытянуть из них информацию
вопрос в том, что этой информации там может и не быть
т.к. при добавлении аттача, используется датаменеджер, и эти поля не указаны в массиве $validfields
и если при работе ДМ там указан тип SILENT, то ошибки не покажет, а просто проигнорирует данные, которые скрипт пытается добавить в эти поля
добавлять их нужно обязательно
либо модулем на хуке (название хука смотреть в файле class_dm_attachment.php) по моему attachdata_start
либо редактированием этого файла класса
@SMak044
Эксперт
Join Date: May 2008
Награды в конкурсах:
Posts: 1,764
Версия vB: 3.8.4
Пол:
Reputation:
Expert 1705
Репутация в разделе: 1190
0
Quote:
Originally Posted by kerk
т.к. при добавлении аттача, используется датаменеджер, и эти поля не указаны в массиве $validfields
и если при работе ДМ там указан тип SILENT, то ошибки не покажет, а просто проигнорирует данные, которые скрипт пытается добавить в эти поля
добавлять их нужно обязательно
либо модулем на хуке (название хука смотреть в файле class_dm_attachment.php) по моему attachdata_start
либо редактированием этого файла класса
каким образом добавляется в запрос выборка нужных полей из БД?
редактирование файла?
да именно так, редактированием файла showthread.php в первом посте в стандартный запрос просто добавил 2 поля.
Quote:
Originally Posted by kerk
потом...
значения этих полей точно не пустые в таблице вложений?
100% не пустые, по умолчанию там ноль, хоть ноль но выводить должно.
Quote:
Originally Posted by kerk
тип поля? (строка, целое число, текст, ???)
тип поля int(5) - как видите целое пятизначное, по умолчанию ноль
значение этого поля колеблиться от 0 до 500 пока
Quote:
Originally Posted by kerk
как добавляются данные в эти поля?
запросом в БД в других скриптах, добавление и обновление данных там происходит отлично, в базе все значение есть, обновляются правильно, это я уже протестировал, да и вытащить их получается в других местах, но не в этом файле, очень странно почему. Ведь получение данных идет стандартным запросом, данные в таблице есть, но почему их вобла не берет - хз((