Как безопасно подключить баннер в шаблон

Форум для авторов модов для phpBB 3.0.x. Здесь можно попросить помощи в разработке у коллег.
Правила форума
Местная Конституция | Шаблон запроса | Документация (phpBB3) | Переход на 3.0.6 и выше | FAQ-3 (phpbb3) | Как задавать вопросы | Как устанавливать моды

Ваш вопрос может быть удален без объяснения причин, если на него есть ответы по приведённым ссылкам (а вы рискуете получить предупреждение ;) ).
Аватара пользователя
Sheer
Former team member
Сообщения: 12113
Стаж: 19 лет 7 месяцев
Откуда: Калининград не Кенигсберг
Благодарил (а): 54 раза
Поблагодарили: 2756 раз

Re: Как безопасно подключить баннер в шаблон

Сообщение Sheer »

kupidon писал(а):Получается в function.php
Точно... не заметил. А зачем, двоечник?
kupidon писал(а):но я с удовольствием учусь
Но так и не научился оформлять код.
Изображение
Общие ошибки новичков (07.11.2005) & Как задавать вопросы
Мини FAQ
Если ничто другое не помогает, прочтите, наконец, инструкцию!
"Никакая инструкция не может перечислить всех обязанностей должностного лица, предусмотреть все отдельные случаи и дать вперёд соответствующие указания, а поэтому господа инженеры должны проявить инициативу и, руководствуясь знаниями своей специальности и пользой дела, принять все усилия для оправдания своего назначения".
Циркуляр Морского технического комитета №15 от 29.11.1910 г.
Аватара пользователя
kupidon
phpBB 1.4.4
Сообщения: 120
Стаж: 14 лет 5 месяцев
Благодарил (а): 62 раза

Re: Как безопасно подключить баннер в шаблон

Сообщение kupidon »

Я думаю, что надо подключать функцию в файле memberlist.php , поскольку там есть переменная нашего пользователя $user_id
Помогите пожалуйста объявить функцию show_zakupka()
Файл с функцией: (/includes/showzakupka.php)
В файле memberlist.php в самом низу пишу:

Код: Выделить всё

......
include($phpbb_root_path . 'includes/showzakupka.' . $phpEx);
show_zakupka();
?>
Но почему-то не вызывается функция :(

Код: Выделить всё

include 'http://19sp.ru/forum/includes/showzakupka.php';
show_zakupka();
так тоже((

Добавлено спустя 1 час 7 минут 28 секунд:
Ну подскажите пожалуйста...вам ведь делов-то на 2 минутки, а я вторую ночь "программирую" и по-прежнему нифига не разберусь.
Аватара пользователя
Sheer
Former team member
Сообщения: 12113
Стаж: 19 лет 7 месяцев
Откуда: Калининград не Кенигсберг
Благодарил (а): 54 раза
Поблагодарили: 2756 раз

Re: Как безопасно подключить баннер в шаблон

Сообщение Sheer »

kupidon писал(а):memberlist.php в самом низу пишу
В самом верху.
Найти

Код: Выделить всё

include($phpbb_root_path . 'includes/functions_display.' . $phpEx);
После вставить

Код: Выделить всё

include($phpbb_root_path . 'includes/showzakupka.' . $phpEx);
Найти

Код: Выделить всё

		$user_id = (int) $member['user_id'];
После вставить

Код: Выделить всё

show_zakupka($user_id);
includes/showzakupka.php

Код: Выделить всё

<?php

if (!defined('IN_PHPBB'))
{
	exit;
}

function show_zakupka($uid)
{
	global $template, $db;

	$query = 'SELECT COUNT(item_order) AS total
		FROM sp_orders_items
		WHERE user_order = ' .$uid. '  and state_order < 3';
	$rrs = $db->sql_query($query);
	$row = $db->sql_fetchrow($rrs);
	$kol = $row['total'] - 2;
	$db->sql_freeresult($rrs);

	for($y = 1; $y < $kol; $y++)
	{
		$query = 'SELECT purchase_id, name, price
			FROM sp_items WHERE id_items = ' .$items[$y]. '';
		$rrs = $db->sql_query( $query );
		$leader = $db->sql_fetchrow( $rrs );
		$pur[$y]	= $leader['purchase_id'];
		$nam[$y]	= $leader['name'];
		$price[$y]	= $leader['price'];
		$db->sql_freeresult($rrs);

		$query = 'SELECT id_username, name, forum_url
			FROM sp_purchases
			WHERE id_purchases = ' .$pur[$y]. '';
		$rrs = $db->sql_query($query);
		$leader = $db->sql_fetchrow($rrs);
		$purch[$y]	= $leader['name'];
		$org[$y]	= $leader['id_username'];
		$url[$y]	= $leader['forum_url'];
		$db->sql_freeresult($rrs);

		$query = 'SELECT username
			FROM ' .USERS_TABLE. '
			WHERE user_id = ' .$org[$y]. '';
		$rrs = $db->sql_query($query);
		$leader = $db->sql_fetchrow($rrs);
		$organ[$y]	= $leader['username'];
		$db->sql_freeresult($rrs);

		$template->assign_block_vars('zakupka', array(
			'ORGANIZATOR' 	=> $organ[$y],
			'ZAKUP' 		=> '<a href="'.$url[$y].'">'.$purch[$y].'</a>',
			'ITEM' 			=> $nam[$y],
			'PRICE' 		=> $price[$y],
			)
		);
	}
	return;
?>
Всего-то в функцию надо передать ид юзера в качестве аргумента.
ЗЫ. Скачай учебник.

Добавлено спустя 1 минуту 48 секунд:
ЗЫЗЫ. Про SQL-запросы в цикле промолчу. Но это сильно! :D :D :D

Добавлено спустя 1 минуту 26 секунд:
kupidon писал(а):Но почему-то не вызывается функция
Инклюдить надо до вызова функции.
Изображение
Общие ошибки новичков (07.11.2005) & Как задавать вопросы
Мини FAQ
Если ничто другое не помогает, прочтите, наконец, инструкцию!
"Никакая инструкция не может перечислить всех обязанностей должностного лица, предусмотреть все отдельные случаи и дать вперёд соответствующие указания, а поэтому господа инженеры должны проявить инициативу и, руководствуясь знаниями своей специальности и пользой дела, принять все усилия для оправдания своего назначения".
Циркуляр Морского технического комитета №15 от 29.11.1910 г.
Аватара пользователя
kupidon
phpBB 1.4.4
Сообщения: 120
Стаж: 14 лет 5 месяцев
Благодарил (а): 62 раза

Re: Как безопасно подключить баннер в шаблон

Сообщение kupidon »

Спасибо, огромное..Завтра обязательно отпишусь..где то есть недочет (сам найду) , поскольку при просмотре профиля белый фон, еще не разобрался толком. Просто от такой красоты мои корявые коды нервно курят в сторонке... ;)
Аватара пользователя
Sheer
Former team member
Сообщения: 12113
Стаж: 19 лет 7 месяцев
Откуда: Калининград не Кенигсберг
Благодарил (а): 54 раза
Поблагодарили: 2756 раз

Re: Как безопасно подключить баннер в шаблон

Сообщение Sheer »

kupidon писал(а):белый фон
Белые (пустые) страницы
+
включи debug
Изображение
Общие ошибки новичков (07.11.2005) & Как задавать вопросы
Мини FAQ
Если ничто другое не помогает, прочтите, наконец, инструкцию!
"Никакая инструкция не может перечислить всех обязанностей должностного лица, предусмотреть все отдельные случаи и дать вперёд соответствующие указания, а поэтому господа инженеры должны проявить инициативу и, руководствуясь знаниями своей специальности и пользой дела, принять все усилия для оправдания своего назначения".
Циркуляр Морского технического комитета №15 от 29.11.1910 г.
Аватара пользователя
kupidon
phpBB 1.4.4
Сообщения: 120
Стаж: 14 лет 5 месяцев
Благодарил (а): 62 раза

Re: Как безопасно подключить баннер в шаблон

Сообщение kupidon »

Продолжаю:
Во первых подправил немного начало кода showzakupka.php, поскольку во втором sql запросе нужна переменная $items[$y]:

Код: Выделить всё

function show_zakupka($uid)
{
	global $template, $db;

	 $query = 'SELECT item_order
		         FROM sp_orders_items
		        WHERE user_order = ' .$uid. '  and state_order < 3';
	 $rrs = $db->sql_query($query);
         while( $row = $db->sql_fetchrow($rrs) ) 
        {
         $items[] = $row["item_order"]; 
         }
         $kol=(count($items)-2) ;

	for($y = 1; $y < $kol; $y++)
	{
		$query = 'SELECT purchase_id, name, price
		FROM sp_items WHERE id_items = ' .$items[$y]. '';
Если в memberlist.php закомментировать строки include($phpbb_root_path . 'includes/showzakupka.' . $phpEx); и вызов функции show_zakupka($user_id); тогда профиль открывается, но , естественно без моей функции.
Что не так?

Добавлено спустя 1 час 42 минуты 13 секунд:
Если долго мучаться- что нибудь получится!

Вы пропустили еще одну скобку, в самом низу, закрытия функции }

Мне понадобилось три часа, чтобы распознать ваш замысел)). Спасибо большое за помощь. Все теперь работает!
Аватара пользователя
Sheer
Former team member
Сообщения: 12113
Стаж: 19 лет 7 месяцев
Откуда: Калининград не Кенигсберг
Благодарил (а): 54 раза
Поблагодарили: 2756 раз

Re: Как безопасно подключить баннер в шаблон

Сообщение Sheer »

kupidon писал(а):Вы пропустили еще одну скобку
Вполне возможно.
kupidon писал(а):Если долго мучаться
Чтобы не мучиться долго - держи debug всегда включенным.
kupidon писал(а):Все теперь работает!
Интересно бы узнать, а сколько там SQL-запросов выплывает? Ыы.....
Изображение
Общие ошибки новичков (07.11.2005) & Как задавать вопросы
Мини FAQ
Если ничто другое не помогает, прочтите, наконец, инструкцию!
"Никакая инструкция не может перечислить всех обязанностей должностного лица, предусмотреть все отдельные случаи и дать вперёд соответствующие указания, а поэтому господа инженеры должны проявить инициативу и, руководствуясь знаниями своей специальности и пользой дела, принять все усилия для оправдания своего назначения".
Циркуляр Морского технического комитета №15 от 29.11.1910 г.
Аватара пользователя
kupidon
phpBB 1.4.4
Сообщения: 120
Стаж: 14 лет 5 месяцев
Благодарил (а): 62 раза

Re: Как безопасно подключить баннер в шаблон

Сообщение kupidon »

Sheer писал(а):Чтобы не мучиться долго - держи debug всегда включенным.
У меня он включен, только я не совсем пойму зачем он нужен? Чтобы в администраторской логи ошибок смотреть? или все-таки в другом месте?

Вернуться в «Для авторов (phpBB 3.0.x)»