

Mkportal разработка
Автор
IRON
, 05 Mar 2009 23:04
Сообщений в теме: 22
#1
Отправлено 05 March 2009 - 23:04
Вот такой созрел вопрос.
Собираюсь писать модуль погоды для своего портала, но т.к портал локальный, то с определенными характеристиками.
Есть определенного вида данные (например, на гисметео). Планирую написать скрипт, который будет грабить эти данные с гисметео и заносить в базу награбленную информацию.
Скрипт будет запускаться через cron каждые n часов.
Вопрос.
Как написать скрипт, который сможет использовать БД портала/форума, но при этом не может быть выполнен гостем/модером/юзером/админом, зашедшим на портал?
Пока есть вот какая идея:
написать скрипт через стандартную админку, но не вывешивать его на сайте и отобрать права на запуск/запись/чтение у всех, кроме root. Крон то работает под рутом, он выполнить сможет.
Но это возможно если скрипты физически сохраняются... А пока я не могу найти место их сохранения.
Собираюсь писать модуль погоды для своего портала, но т.к портал локальный, то с определенными характеристиками.
Есть определенного вида данные (например, на гисметео). Планирую написать скрипт, который будет грабить эти данные с гисметео и заносить в базу награбленную информацию.
Скрипт будет запускаться через cron каждые n часов.
Вопрос.
Как написать скрипт, который сможет использовать БД портала/форума, но при этом не может быть выполнен гостем/модером/юзером/админом, зашедшим на портал?
Пока есть вот какая идея:
написать скрипт через стандартную админку, но не вывешивать его на сайте и отобрать права на запуск/запись/чтение у всех, кроме root. Крон то работает под рутом, он выполнить сможет.
Но это возможно если скрипты физически сохраняются... А пока я не могу найти место их сохранения.
#5
Отправлено 06 March 2009 - 01:03
IRON, а в чём проблема то? создай php скрипт, но не вывешивай его в web, в кроне пропиши /usr/local/bin/php /path_to_script/script.php (пути соответственно могут отличаться в зависимости от дистриба), а прописать в скрипте, который никто кроме рута не сможет даже прочитать, пароль, логин и имя базы по-моему вполне безопасно.
#6
Отправлено 06 March 2009 - 01:13
baragoon (6.3.2009, 0:03) писал:
IRON, а в чём проблема то? создай php скрипт, но не вывешивай его в web, в кроне пропиши /usr/local/bin/php /path_to_script/script.php (пути соответственно могут отличаться в зависимости от дистриба), а прописать в скрипте, который никто кроме рута не сможет даже прочитать, пароль, логин и имя базы по-моему вполне безопасно.


В принципе да, согласен.
#8
Отправлено 18 April 2009 - 19:18
Немного АПну тему...
Теперь есть вот какой вопрос.
Задача-сделать так, чтобы пользователи могли вводить определенные данные в блок, а я мог через админку урпавлять этиими данными-например, одни разрешить а другие запретить.
С введением данных все ясно-юзеры вводят, все попадает в базу, все довольны. А как быть с админкой? Как добавить себе пункт меню в админке?
Теперь есть вот какой вопрос.
Задача-сделать так, чтобы пользователи могли вводить определенные данные в блок, а я мог через админку урпавлять этиими данными-например, одни разрешить а другие запретить.
С введением данных все ясно-юзеры вводят, все попадает в базу, все довольны. А как быть с админкой? Как добавить себе пункт меню в админке?
#9
Отправлено 18 April 2009 - 19:53
IRON (18.4.2009, 19:18) писал:
Немного АПну тему...
Теперь есть вот какой вопрос.
Задача-сделать так, чтобы пользователи могли вводить определенные данные в блок, а я мог через админку урпавлять этиими данными-например, одни разрешить а другие запретить.
С введением данных все ясно-юзеры вводят, все попадает в базу, все довольны. А как быть с админкой? Как добавить себе пункт меню в админке?
Теперь есть вот какой вопрос.
Задача-сделать так, чтобы пользователи могли вводить определенные данные в блок, а я мог через админку урпавлять этиими данными-например, одни разрешить а другие запретить.
С введением данных все ясно-юзеры вводят, все попадает в базу, все довольны. А как быть с админкой? Как добавить себе пункт меню в админке?
В админке добавить пункт
В директории admin создаете php файл например ad_myscript.php в этом фале пишите ваши функции управления таблицами или ещё чем, по принципу других файлов в этой директории
далее окрываете файл ad_menu.php там находите
<tr><td width=\"100%\" class=\"tdblock\">$mod_quote <a class=\"uno\" href=\"index.php?ind=ad_quote\">{$this->lang['ad_quote']}</a></td></tr>добавляете ниже или выше не важно
<tr><td width=\"100%\" class=\"tdblock\"><a class=\"uno\" href=\"index.php?ind=ad_myscript\">Моя ссылка</a></td></tr>
После этого открываете файл admin/index.php
находим
'ad_review' => "ad_review",добавляем ниже
'ad_myscript' => "ad_myscript",
всё вроде
#10
Отправлено 18 April 2009 - 20:12
Собственно именно это мне и нужно было, спасибо.
Вот еще вопрос.
Скрипт, который пытась впихать в мкпортал:
`id`, `type`, `name`, `descr`, `online`, `adress`, `approved` FROM `mkp_my_resources`
Где ошибка?
P.S: только учусь
Вот еще вопрос.
Скрипт, который пытась впихать в мкпортал:
<? INSERT INTO my_resources (id, type, name, descr) VALUES (1, 'DC++', 'Official', 'The best'); Echo 'Added!'; ?>Не работает. Просто ничего не выдает. При этом в таблице след. поля:
`id`, `type`, `name`, `descr`, `online`, `adress`, `approved` FROM `mkp_my_resources`
Где ошибка?
P.S: только учусь

#12
Отправлено 19 April 2009 - 10:25
Пофиксил. Ничего не поменялось.
Таблицу создавал через пхпмайадмин, все что сделал-назначил тип полей и на все модификатор null.
<? INSERT INTO mkp_my_resources VALUES (1, `DC++`,`Official`, `The best`); Echo 'Added!'; ?>Самое обидное-зараза ни ошибок, ничего не выдает.
Таблицу создавал через пхпмайадмин, все что сделал-назначил тип полей и на все модификатор null.
#16
Отправлено 20 April 2009 - 19:12
Ну по аналогии с другими модулями вот например для вывода на экран в портале в модуль или функцию модуля вставляем
в коде видно что на экран выводит данные переменная $output
$blocks .= $Skin->view_block("Название страницы", $output);
То есть что бы что то вывести это нужно взять в эту переменную
например $output .="Тест вывода на экран";
И echo меняем на $output .=
Можно использовать конечно другую переменную но весь портал написан именно через $output так что её и используем
$blocks .= $Skin->view_block("Название страницы", $output); $mklib->printpage("1", "1", тайтл страницы, $blocks);
в коде видно что на экран выводит данные переменная $output
$blocks .= $Skin->view_block("Название страницы", $output);
То есть что бы что то вывести это нужно взять в эту переменную
например $output .="Тест вывода на экран";
И echo меняем на $output .=
Можно использовать конечно другую переменную но весь портал написан именно через $output так что её и используем
#20
Отправлено 20 April 2009 - 23:21
Серавно не чего не понял
вот простейший пример страницы для админки модуля
а так же http://www.rusmkport...zdaniesoobmpdul
вот простейший пример страницы для админки модуля
<?php if (!defined("IN_MKP")) { die ("Sorry !! You cannot access this file directly."); } $output .= " ghfghfghfgh "; $output = $Skin->view_block("Название", "$output"); $mklib->printpage_admin("Название", $output); ?>
а так же http://www.rusmkport...zdaniesoobmpdul
Ответить

Количество пользователей, читающих эту тему: 0
0 пользователей, 0 гостей, 0 анонимных