Регистрация
Регистрируясь, вы подтверждаете свое согласие с соглашением об использовании персональных данных.
Восстановление пароля
ЧЁРНАЯ ПЯТНИЦА: -40% на редакции E-commerce и Extra до 2 декабря
Купить со скидкой
12.07.2006, 15:40
VitAShka
БГТУ

Зарегистрирован:
2005-02-09
Сообщений: 49

Добрый день!

Допустим есть шаблон "Погода".

Как мне туда вписать следующий код, чтобы в разделе с этим шаблоном выводилась информация. Такой же код стоит на сайте, использующем PHP (http://ideal-house.org/weather.php). Этот сайт перевожу на NetCat.
Как мне перенести код погоды?

Код:
<? $page_template="weather"; require("includes/init.inc.php");
//$UI->draw_content=false;

$moscow = "http://informer.gismeteo.ru/rss/27612.xml";

// MOSCOW
$w = curl_init();
curl_setopt($w, CURLOPT_URL, $moscow);
curl_setopt($w, CURLOPT_RETURNTRANSFER, 1);
$page = curl_exec($w);
$dom = new DOMDocument();
$dom->loadXML($page);
$xpath = new DOMXPath($dom);
$descr = iconv("utf-8","windows-1251",$xpath->query("/rss/channel/item[1]/description")->item(0)->nodeValue);
preg_match("/(.*), температура (.*), давление (.*), ветер (.*)/",$descr,$sub);
$cond = $sub[1];
$temp = $sub[2];
$pres = $sub[3];
$wind = $sub[4];
$img = $xpath->query("/rss/channel/item[1]/enclosure")->item(0)->getAttribute("url");
$page_content["msc_img"] = $img;
$page_content["msc_temp"] = $temp;
$page_content["msc_cond"] = $cond.",<br>давление ".$pres.",<br>ветер ".$wind."";

?>


BSTU
12.07.2006, 16:07
DiGGy
DiGGy
DiGGy

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

Для начала Вам надо проанализировать какие именно файлы Вам еще необходимы... по Вашему коду необходим файл "includes/init.inc.php"... Все ети файлы (если конечно есть смысл в их необходимости) должны быть скопированы в каталоги неткет, например в каталог modules

в остальном можете пойти 2мя путями
1. Определяете пользовательскую функцию и туда запихиваете весь код, приведенный Вами в примере, а потомо в шаблоне вызываете эту функцию и используете переменную $page_content
2. Весь свой код пихаете непосредственно в шаблон

Temet nosce...
12.07.2006, 16:19
VitAShka
БГТУ

Зарегистрирован:
2005-02-09
Сообщений: 49

Как я понимаю файл "includes/init.inc.php" нужен только для сайта не на NEtCat, поэтому строку существенно удалить.

А вот дальше поняля на половину. Я просто с этим еще ни разу не встречалась.

1. Определить пользовательскую функцию:
т.е. назвать функцию на подобие функций NetCat, opt_case например. Далее эту функцию с кодом написать в какой файл?
При вывове функции где использовать переменную $page_content
2. Еще раз этот код?

Если можно, объесните для чайников в PHP. Читать код я немного могу, но сама не пишу на PHP.

BSTU
13.07.2006, 09:31
DiGGy
DiGGy
DiGGy

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

artvlion писал(а):
Как я понимаю файл "includes/init.inc.php" нужен только для сайта не на NEtCat, поэтому строку существенно удалить.

Не факт. Попробуйте удлить этот файл и посмотрите будет ли работать Ваша погода на старом сайте.

artvlion писал(а):
А вот дальше поняля на половину. Я просто с этим еще ни разу не встречалась.

1. В файле /netcat/modules/default/function.inc.php Вы имеете возможность создавать свои функции, которые будут доступны из неткета. Создайте там функцию, например: my_weather() и поместите туда указанный Вами код. А затем вызывайте эту функцию из шаблона или макета.

2. Копируете Ваш код и вставляете его в шаблон

Temet nosce...
13.07.2006, 13:34
VitAShka
БГТУ

Зарегистрирован:
2005-02-09
Сообщений: 49

К файлам старого сайта я доступ не имею, чтобы там код править.

Все очтальное понятно, кроме второго пункта. Зачем еще раз копировать код, когда вызывая функцию ".my_weather()." код должен выполняться? Его же, как я понимаю, в круглые скобки копировать в шалоне?

BSTU
13.07.2006, 17:32
DiGGy
DiGGy
DiGGy

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

п.1 и п.2 приведены как взаимосиключающие примеры... т.е. два варианта решения вашей задачи, а не как последовательность выполнения

Temet nosce...
14.07.2006, 12:57
VitAShka
БГТУ

Зарегистрирован:
2005-02-09
Сообщений: 49

улыбка Понятно, тогда пункт два не действует. Пробовала и как скрипт PHP в шаблон писать, и просто вставлять - ничего НЕ получается, буду первый вариант узать.

BSTU
18.07.2006, 12:44
VitAShka
БГТУ

Зарегистрирован:
2005-02-09
Сообщений: 49

А если первый пункт выполнить, то вообще вместо сайта грузится белая страница!!!! УЖАС!!!

BSTU
19.07.2006, 09:48
jedi

Зарегистрирован:
2005-01-26
Сообщений: 35

белая страница грузится в том случае, если существует какая-то ошибка на странице и отключен показ warning-ов & error-ов. Проверьте. Возможно где-то кавычки не экранированы или что-то ещЈ.
198 196 2006-07-19 09:48:10 8635
Описание проекта