Поддержка PHP - Форум
Приветствую Вас Гость | Сегодня: 10.12.2016, Суббота | RSS
[ Новые сообщения · Участники · Правила форума · Поиск · RSS ]
Страница 1 из 11
Форум » Администрация форума » Работа сайта и форума » Поддержка PHP (Возможность использования PHP-скриптов)
Поддержка PHP
GreyДата: Пятница, 24.06.2011, 15:02 | Сообщение # 1
Основатель сайта
Зареген: 12.02.2010
Всего сообщений: 265
Итак. На Ucoz состоялся релиз PHP и API. Будем пробовать!!!


Quote
Предлагаю в этой теме обсуждать PHP-скрипты, их функционал, проблемы, идеи и прочее


ОБЩАЯ ИНФОРМАЦИЯ

При активации услуги PHP для сайта учетная запись создается на отдельном сервере, на котором происходит исполнение всех php-скриптов. Доступ к данной учетной записи, загрузка, изменение и удаление данных осуществляется по протоколу FTP с логином и паролем (указанным при активации услуги PHP), которые можно посмотреть в панели управления сайтом.

При создании аккаунта автоматически создается директория scripts, в которой должны размещаться все php-скрипты, которые вызываются на страницах сайта. Все скрипты должны иметь расширение ".php", только такие файлы доступны по прямым адресным ссылкам. Все другие файлы (их содержимое) можно получать ТОЛЬКО посредством самих php-скриптов.
Все учетные записи создаются со следующими ограничениями:
максимальный объем занимаемого дискового пространства - 200Мб
максимальное количество файлов и директорий - 10000
максимальное количество файлов в директории - 500
максимальное время исполнения скрипта - 15 секунд

КАК ИСПОЛЬЗОВАТЬ

Использовать php-скрипты на страницах сайта можно в текущем домене через проксирование:
http://SITE_ADDRESS/php....=valueM
В шаблонах для вызова php-скрипта можно использовать функцию PHPCODE следующим образом:

где:
SITE_ADDRESS - адрес сайта пользователя, на котором выполняется скрипт
SCRIPT_NAME - путь (относительно папки scripts) и имя скрипта, который выполняется
?param0=valueA¶m1=valueB...¶mN=valueM - необязательные параметры для скрипта

Данная функция выполняет GET-запрос на указанный скрипт. Ответ для нее должен быть возвращен только в формате json, т.е. при использовании данной функции в шаблонах страниц, вызываемый ею скрипт не должен менять тип возвращаемых данных на какой-либо другой (путем установки переменной $___notjson, использования функции header('Content-type: TYPE') и т.п.). Использовать ее можно 1 раз на страницу. Для вызова методом GET нескольких скриптов на одной странице можно использовать исходный javascript код функции $PHPCODE$, изменяя идентификатор (id) тега
. Реализовать использование POST-запросов можно через формы, iframe, другие скрипты этого домена и т.д, например:

в файле шаблона:
Code
<script type="text/javascript">
function updatepostdata(result) { $('#postdiv').html(result); }
</script>
<div id="postdiv"></div>
<iframe frameborder="0" src="http://SITE_ADDRESS/php/SCRIPT_NAME.php?param0=valueA¶m1=valueB...¶mN=valueM"></iframe>

в скрипте SCRIPT_NAME.php:
<?
$___notjson=1;
if ($_POST)
{
$ret="POST OK:
";
foreach ($_POST as $i => $val) $ret.="$i=$val
";
echo "<script type=\"text/javascript\">
window.parent.updatepostdata(\"$ret\");
</script>";
}
echo "<form action=\"http://SITE_ADDRESS/php/SCRIPT_NAME.php?param0=valueA¶m1=valueB...¶mN=valueM\" method=\"POST\">
<input type=\"hidden\" name=\"field0\" value=\"test_".rand()."\">
<input type=\"submit\" value=\"Go\">
</form>";
?>


ИЛИ

в файле шаблона:
Code
<script type="text/javascript">
function updatepostdata(result) { $('#postdiv').html(result); }
</script>
<div id="postdiv"></div>
<iframe frameborder="0">
<form action=\"http://SITE_ADDRESS/php/SCRIPT_NAME.php?param0=valueA¶m1=valueB...¶mN=valueM\" method=\"POST\">
<input type=\"hidden\" name=\"field0\" value=\"test_".rand()."\">
<input type=\"submit\" value=\"Go\">
</form>
</iframe>


в скрипте SCRIPT_NAME.php:
Code
<?
$___notjson=1;
if ($_POST)
{
$ret="POST OK:
";
foreach ($_POST as $i => $val) $ret.="$i=$val
";
echo "<script type=\"text/javascript\">
window.parent.updatepostdata(\"$ret\");
</script>";
}
else echo "No data
";
?>


Есть несколько параметров, которыми можно управлять в скрипте:
$___notjson=1 - если данная переменная установлена в единицу, то результат работы скрипта возвращается в том виде, в каком его сформировал скрипт, иначе (по умолчанию) результат возвращается в json формате
$___retval - результат работы скрипта (возвращенные им данные), может быть установлена в скрипте пользователя и будет использоваться, как результат работы
$___error - используется как описание ошибки в случае, если скрипт должен ее вернуть

НЕ ИСПОЛЬЗУЙТЕ __FILE__, т.к. скрипты выполняются через wrapper, и данная переменная определена как название wrapper-скрипта.

Внимание!
1. Любые попытки использовать PHP-скрипты для злонамеренных действий, в частности для отправки большого числа HTTP-запросов куда-либо, наказываются удалением сайта!
2. По умолчанию результат работы скрипта возвращается В ФОРМАТЕ JSON.


ОГРАНИЧЕНИЯ PHP

В данной реализации запрещено использование следующих функций языка:
системные вызовы (proc_open, proc_terminate, shell_exec, system и т.д.)
низкоуровневые функции по работе с файловой системой (dio_fcntl, dio_open, dio_read, dio_seek и т.д.)
posix функции
shared memory функции
MySQL функции: mysql_stat, mysql_pconnect
Более практичные примеры использования скриптов можно посмотреть на phpexample.ucoz.net.
Хронологию изменений и дополнений можно посмотреть на phpexample.ucoz.net/manual.
Награды: 16 Сборщик программ: Total Commander Grey Pack, QIP Infium (2012), Miranda IM и др. За 100 Сообщений!За 200 Сообщений!!!
Пользователь из города: Санкт-Петербург
volodia_kДата: Пятница, 24.06.2011, 16:37 | Сообщение # 2
Генерал-лейтенант
Зареген: 28.05.2010
Всего сообщений: 387
Работает!

phpinfo выдал огромный список поддерживаемых библиотек.
лично меня порадовали:
CURL - теперь можно работать с SygarSync прям с сайта
MYSQL
надстройка под базы PDO
ICONV
ZendOptimizer
GD

В процессе буду отписывать если что вылезет ...
Награды: 15 Сборщик пака дополнительных программ для Total Commander PowerUser! За 100 Сообщений!За 200 Сообщений!!!За 300 Сообщений!!!
Пользователь из города: Almaty
GreyДата: Пятница, 24.06.2011, 21:42 | Сообщение # 3
Основатель сайта
Зареген: 12.02.2010
Всего сообщений: 265
volodia_k, Здорово! Спасибо!!! Значит не зря взяли услугу PHP. :)
Награды: 16 Сборщик программ: Total Commander Grey Pack, QIP Infium (2012), Miranda IM и др. За 100 Сообщений!За 200 Сообщений!!!
Пользователь из города: Санкт-Петербург
Форум » Администрация форума » Работа сайта и форума » Поддержка PHP (Возможность использования PHP-скриптов)
Страница 1 из 11
Поиск:

Copyright by Grey © 2016 Хостинг от uCoz

Гость
Мини-Чат