|
|
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
Зарегистрирован: 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
Зарегистрирован: 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
Зарегистрирован: 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-ов. Проверьте. Возможно где-то кавычки не экранированы или что-то ещЈ.
|