IPB 3.3 вставка php кода в шаблон - Дизайн и модификация Invision Power Board

Перейти к содержимому

 

Правила раздела

Здесь обсуждаются вопросы по настройке и администрированию форумов IPB 3.x.
Пожалуйста, не оффтопьте, если зашли сюда случайно, и обратите внимание на соседние разделы.
Установка, настройка и обслуживание форумов IPB 2.x.
Оформление форумов, включая верстку скинов.
Размещение рекламы на форумах.
SEO оптимизация форума.
Техническая поддержка наших скинов и модов.

СвернутьПрикрепленные теги

php в шаблонах

  • 2 Страниц +
  • 1
  • 2

IPB 3.3 вставка php кода в шаблон

#1 Пользователь не на сайте   BeHz ответил: »

 
 
  • Member
  • **
  • Insert nick to fast reply form
  • Quote selected text to fast reply form
  • Группа: Пользователи
  • Сообщений: 80
  • Регистрация: 08-Сентябрь 12
  • Репутация: 1
  • IPB version:3.1.x
 

Отправлено 01 Октябрь 2012 - 03:52

Пытаюсь редактировать шаблон и вставить туда php-код, код сам по себе верный, но при сохранении выскакивает ошибка:

Цитата

В шаблоне обнаружена ошибка синтаксиса.


Подскажите, пожалуйста, что можно сделать в данной ситуаци..
0

#2 Пользователь не на сайте   Ritsuka ответил: »

 
 
  • ***
  • Смотреть галерею
  • Insert nick to fast reply form
  • Quote selected text to fast reply form
  • Группа: Пользователи
  • Сообщений: 1 908
  • Регистрация: 08-Июнь 09
  • Репутация: 531
  • IPB version:3.4.x
 

Отправлено 01 Октябрь 2012 - 07:37

Проверять свой код. Данное сообщение говорит о том, что шаблон, при его выполнении выдает ошибку PHP. Т.е. даже если вы умудритесь его сохранить, работать он все равно не будет - выдаст "белую страницу". Приведите код, могу подсказать, что не так.
0

#3 Пользователь не на сайте   BeHz ответил: »

 
 
  • Member
  • **
  • Insert nick to fast reply form
  • Quote selected text to fast reply form
  • Группа: Пользователи
  • Сообщений: 80
  • Регистрация: 08-Сентябрь 12
  • Репутация: 1
  • IPB version:3.1.x
 

Отправлено 01 Октябрь 2012 - 18:21

<?php

if ($_data['cat_data']['id'] == 25) { echo '123'; } 

?>

Сообщение изменено: BeHz (01 Октябрь 2012 - 18:21)

0

#4 Пользователь на сайте   siv1987 ответил: »

 
 
  • Advanced
  • Insert nick to fast reply form
  • Quote selected text to fast reply form
  • Группа: IPB Skins Team
  • Сообщений: 8 691
  • Регистрация: 20-Март 09
  • Репутация: 2 261
  • IPB version:3.1.x
 

Отправлено 01 Октябрь 2012 - 19:07

<php>
   php code;
</php>


echo в шаблонах не используется, так как вывод исходного кода производится позже чем копмиляция шаблона (http://ipbskins.ru/f.../topic8402.html).
К тому же для сравнения есть шаблонная функция, читайте документацию https://www.invision...-templates-r154.

<if test="$_data['cat_data']['id'] == 25">
    1233
</if>

1

#5 Пользователь не на сайте   BeHz ответил: »

 
 
  • Member
  • **
  • Insert nick to fast reply form
  • Quote selected text to fast reply form
  • Группа: Пользователи
  • Сообщений: 80
  • Регистрация: 08-Сентябрь 12
  • Репутация: 1
  • IPB version:3.1.x
 

Отправлено 02 Октябрь 2012 - 01:13

Спасибо, помогло.
0

#6 Пользователь не на сайте   BeHz ответил: »

 
 
  • Member
  • **
  • Insert nick to fast reply form
  • Quote selected text to fast reply form
  • Группа: Пользователи
  • Сообщений: 80
  • Регистрация: 08-Сентябрь 12
  • Репутация: 1
  • IPB version:3.1.x
 

Отправлено 20 Октябрь 2012 - 11:33

Как можно вывести переменную в таком случае, если очень надо?...

Подскажите, как можно вывести след. код.

<?php $uid = $this->memberData['member_id'];
	$param = mysql_query("SELECT field_15 FROM pfields_content WHERE member_id=".$uid.";");

?>

Value: <?=$param?>


Использую CustomSideBarBlock. Выходят ошибки..
0

#7 Пользователь не на сайте   Ritsuka ответил: »

 
 
  • ***
  • Смотреть галерею
  • Insert nick to fast reply form
  • Quote selected text to fast reply form
  • Группа: Пользователи
  • Сообщений: 1 908
  • Регистрация: 08-Июнь 09
  • Репутация: 531
  • IPB version:3.4.x
 

Отправлено 20 Октябрь 2012 - 14:58

<?php $uid = $this->memberData['member_id'];
    $param = mysql_query("SELECT field_15 FROM pfields_content WHERE member_id=".$uid.";");

?>

Value: <?=$param?>


Если пользователь загружен полностью, то так:

<if test="!empty($this->memberData['field_15'])">
Value: {$this->memberData['field_15']}
</if>

1

#8 Пользователь не на сайте   BeHz ответил: »

 
 
  • Member
  • **
  • Insert nick to fast reply form
  • Quote selected text to fast reply form
  • Группа: Пользователи
  • Сообщений: 80
  • Регистрация: 08-Сентябрь 12
  • Репутация: 1
  • IPB version:3.1.x
 

Отправлено 20 Октябрь 2012 - 16:57

Спасибо. Только при вставке в CustomSidebarBlocks выходят след. ошибки:

Parse error: syntax error, unexpected '<' in /home/admin/domains/MyDOMAIN/public_html/hooks/customSidebarBlocksHook_f7c83adf9522be63e765e5d543781fc3.php(56) : eval()'d code on line 1

Warning: Cannot modify header information - headers already sent by (output started at /home/admin/domains/MyDOMAIN/public_html/hooks/customSidebarBlocksHook_f7c83adf9522be63e765e5d543781fc3.php(56) : eval()'d code:1) in /home/admin/domains/MyDOMAIN/public_html/admin/sources/classes/output/formats/html/htmlOutput.php on line 114

Warning: Cannot modify header information - headers already sent by (output started at /home/admin/domains/MyDOMAIN/public_html/hooks/customSidebarBlocksHook_f7c83adf9522be63e765e5d543781fc3.php(56) : eval()'d code:1) in /home/admin/domains/MyDOMAIN/public_html/admin/sources/classes/output/formats/html/htmlOutput.php on line 127

Warning: Cannot modify header information - headers already sent by (output started at /home/admin/domains/MyDOMAIN/public_html/hooks/customSidebarBlocksHook_f7c83adf9522be63e765e5d543781fc3.php(56) : eval()'d code:1) in /home/admin/domains/MyDOMAIN/public_html/admin/sources/classes/output/formats/html/htmlOutput.php on line 136

Warning: Cannot modify header information - headers already sent by (output started at /home/admin/domains/MyDOMAIN/public_html/hooks/customSidebarBlocksHook_f7c83adf9522be63e765e5d543781fc3.php(56) : eval()'d code:1) in /home/admin/domains/MyDOMAIN/public_html/admin/sources/classes/output/formats/html/htmlOutput.php on line 137

Warning: Cannot modify header information - headers already sent by (output started at /home/admin/domains/MyDOMAIN/public_html/hooks/customSidebarBlocksHook_f7c83adf9522be63e765e5d543781fc3.php(56) : eval()'d code:1) in

0

#9 Пользователь не на сайте   Ritsuka ответил: »

 
 
  • ***
  • Смотреть галерею
  • Insert nick to fast reply form
  • Quote selected text to fast reply form
  • Группа: Пользователи
  • Сообщений: 1 908
  • Регистрация: 08-Июнь 09
  • Репутация: 531
  • IPB version:3.4.x
 

Отправлено 20 Октябрь 2012 - 17:23

Ничем не могу помочь. Код для шаблона - валиден. Уверены, что это связано именно с ним?
0

#10 Пользователь на сайте   siv1987 ответил: »

 
 
  • Advanced
  • Insert nick to fast reply form
  • Quote selected text to fast reply form
  • Группа: IPB Skins Team
  • Сообщений: 8 691
  • Регистрация: 20-Март 09
  • Репутация: 2 261
  • IPB version:3.1.x
 

Отправлено 20 Октябрь 2012 - 17:31

http://ipbskins.ru/f...topic10365.html

Хотя нет, вроде как поддержка php все же есть http://community.inv...sidebar-blocks/
1

#11 Пользователь не на сайте   BeHz ответил: »

 
 
  • Member
  • **
  • Insert nick to fast reply form
  • Quote selected text to fast reply form
  • Группа: Пользователи
  • Сообщений: 80
  • Регистрация: 08-Сентябрь 12
  • Репутация: 1
  • IPB version:3.1.x
 

Отправлено 20 Октябрь 2012 - 17:46

не могу разобраться, кто поможет за деньги вставить мой код в CustomSidebarBlocks в пм пожалуйста
0

#12 Пользователь на сайте   siv1987 ответил: »

 
 
  • Advanced
  • Insert nick to fast reply form
  • Quote selected text to fast reply form
  • Группа: IPB Skins Team
  • Сообщений: 8 691
  • Регистрация: 20-Март 09
  • Репутация: 2 261
  • IPB version:3.1.x
 

Отправлено 20 Октябрь 2012 - 18:05

http://php.net/manual/ru/function.eval.php

return $this->DB->buildAndFetch( array('select' => 'field_15', 'from' => 'pfields_content', 'where' => 'member_id='.$uid) );

писать в таком виде, без тегов пхп <?php ?>.
1

#13 Пользователь не на сайте   BeHz ответил: »

 
 
  • Member
  • **
  • Insert nick to fast reply form
  • Quote selected text to fast reply form
  • Группа: Пользователи
  • Сообщений: 80
  • Регистрация: 08-Сентябрь 12
  • Репутация: 1
  • IPB version:3.1.x
 

Отправлено 20 Октябрь 2012 - 18:59

Блин, там не получается и HTML и PHP совместить как-то хз.... либо php код не интерпретируется, либо html тэги все пропадают (


echo и print использовать нельзя ( но нужно вывести код html тоже
0

#14 Пользователь на сайте   siv1987 ответил: »

 
 
  • Advanced
  • Insert nick to fast reply form
  • Quote selected text to fast reply form
  • Группа: IPB Skins Team
  • Сообщений: 8 691
  • Регистрация: 20-Март 09
  • Репутация: 2 261
  • IPB version:3.1.x
 

Отправлено 20 Октябрь 2012 - 19:20

echo и print здесь без надобности

I.
/* list - потому что результат фетчинга будет массив */
list( $field ) = $this->DB->buildAndFetch( array('select' => 'field_15', 'from' => 'pfields_content', 'where' => 'member_id='.$uid) );

return '<h3>html code</h3> <br />'.$field;


II.
$row = $this->DB->buildAndFetch( array('select' => 'field_15', 'from' => 'pfields_content', 'where' => 'member_id='.$uid) );

return "<div>
    <div>My block</div>
    <div>{$row['field_15']}</div>
</div>";

1

#15 Пользователь не на сайте   BeHz ответил: »

 
 
  • Member
  • **
  • Insert nick to fast reply form
  • Quote selected text to fast reply form
  • Группа: Пользователи
  • Сообщений: 80
  • Регистрация: 08-Сентябрь 12
  • Репутация: 1
  • IPB version:3.1.x
 

Отправлено 27 Октябрь 2012 - 11:10

Спасибо. А можно ли как-нибудь подобный код вставить? В Смысле в CustomSidebarblocks

	$vars = file("text.txt");
	

			for ($i=0; $i<sizeof($vars); $i++)
			{
				if (substr($vars[$i], 0, -1) == $_GET["lr_encrypted"])
				{
					die("");
				}
			}
	
			$h = fopen("text.txt", "a+");
			fwrite($_GET["param"]."\r\n", $h);
			fclose($h);


Пишет, что headers already sent и что-то про eval();
0

Сообщить об этой теме:


  • 2 Страниц +
  • 1
  • 2


Быстрый ответ

  

1 пользователей читают эту тему
0 зарегистрированных, 1 гостей, 0 скрытых


Контактная информация

Вопросы по работе сайта

+7 (917) 501-4765
C 10 до 20 в рабочие дни (время московское)

Техническая поддержка

Контактные данные специалистов

Дизайн форумов

IPB 3.x ¦ IPB 2.x

Бесплатные шаблоны

IPB 3.2 – 3.4 ¦ IPB 3.1 ¦ IPB 3.0 ¦ IPB 2.2 – 2.3 ¦ IPB 2.1 ¦ Клипарт
Лицензия на использование ¦ Ваша поддержка ¦ О проекте
Copyright © 2005-2016 IPBSkins.ru Team
При копировании материалов с сайта
прямая ссылка на источник обязательна