Читают блог: 6
Гостей: 6
Пользователей: 0
Главная » 2011 » Март » 30

30.03.2011
Среда
15:51

Релиз PHP и API на uCoz

Новости
Php и API uCozУ нас произошло одно из самых ожидаемых обновлений системы - теперь в uCoz возможно использование языка программирования PHP и функционала API.

PHP - это платная услуга, она доступна как в рамках пакетов (начиная с пакета "Расширенный 2”), так и как отдельная услуга ($1.99 в месяц). Цены на все пакеты, в которых вводится данная услуга, остаются на прежнем уровне и не повышаются.

АPI - это бесплатная возможность, её нужно просто активировать в Основных настройках сайта:


Что теперь можно сделать?

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

Для чего данное решение не предназначено?

Данное решение не подходит для установки портальных систем, монстрообразных движков форумов, и прочих высоконагрузочных скриптов с неоптимальным исходным кодом, дающих высокие необоснованные нагрузки на сервер. Собственно, подобные ограничения в реальности есть у любых виртуальных хостингов. К тому же, в ряде случаев это будет дублировать функционал uCoz, и врядли будет иметь целесообразность.

Примеры того, что можно реализовать при помощи PHP

Мы подготовили несколько примеров того, как можно использовать вводимое решение. Все эти примеры с кодами и описаниями доступны на http://phpexample.ucoz.net
Мы также надеемся, что коллекции готовых скриптов и решений будут постоянно пополняться не только усилиями наших разработчиков, но и пользователями системы!
Чтобы поставить уже готовый и отлаженный скрипт - совсем не обязательно быть программистом - при наличии четкой пошаговой инструкции это под силу каждому.

Итак, примеры:

1. Кастомизированные водяные знаки на картинках:



2. Подписка на рассылку с использованием кода безопасности:



3. Смена группы пользователей, при помощи отправки SMS - реализацию этой функции давно просили в нашем сообществе. Например, для организации исключительно платного доступа к некоторым разделам сайта.



Данная функция станет доступна в панели управления как виджет и ей сможет воспользоваться любой сайт, который считает, что ему данный функционал необходим. К сожалению, по некоторым причинам мы не приводим исходный код данного решения, но при этом для его реализации был использован стандартный функционал API и подобный виджет может теперь создать любой желающий.

Посмотреть на другие примеры и получить код для вышеперечисленных можно на сайте http://phpexample.ucoz.net
Вы можете писать свои PHP скрипты и предлагать их к размещению в общий каталог скриптов. В будущем будут проводиться конкурсы, связанные с разработкой PHP скриптов для системы uCoz.

В каком формате мы внедряем эту функцию?

Это именно возможность использовать язык PHP. Под запретом функции работы с памятью, системные вызовы и низкоуровневые функции по работе с файловой системой.
Да, быть может вы уверенны в своих познаниях PHP и готовы поставить на кон голову, что именно ваши скрипты не положат сервер. Но представьте, что будет, если владелец соседнего сайта, того, что расположен на одном с вами сервере, начнет экспериментировать и результат работы его пытливого мозга и шаловливых рук уронит не только его сайт, но и все 100 тысяч, которым не посчастливилось хоститься рядом. Именно поэтому подобные функции есть и будут оставаться под запретом.
Все остальные же функции языка использовать можно.
Можно работать с POST и GET запросами.

Как это работает?

Для вашего аккаунта при активации функции создается отдельная учетная запись на отдельном сервере, папка scripts, где будут храниться все файлы с расширением *.php. Только файлы с таким расширением будет можно вызывать непосредственно в редакторе шаблонов путем специального обращения. Все остальные файлы (их содержимое) можно получать только посредством самих php-скриптов (т.е. нельзя напрямую из шаблона обратиться к картинке в папке /scripts/ или файлу с базой данных, но можно вызвать их через скрипт, а сам скрипт уже вызвать в шаблоне). Сама папка хранится на отдельном сервере, на котором и происходит исполнение всех скриптов. Доступ к ней осуществляется через FTP.
Для того, чтобы запустить скрипт на исполнение, его нужно вызвать в любом нужном вам месте шаблона или материала (или даже напрямую, ссылкой в браузере) в текущем домене через проксирование, используя вот такой синтаксис:

http://SITE_ADDRESS/php/SCRIPT_NAME.php?param0=valueA&param1=valueB...&paramN=valueM

В шаблонах для вызова php-скрипта можно использовать функцию PHPCODE следующим образом:

<?$PHPCODE$("http://SITE_ADDRESS/php/SCRIPT_NAME.php?param0=valueA¶m1=valueB...¶mN=valueM")?>
где
  • SITE_ADDRESS - адрес сайта пользователя, на котором выполняется скрипт.
  • SCRIPT_NAME - путь (относительно папки scripts) и имя скрипта, который выполняется.
  • ?param0=valueA&param1=valueB...&paramN=valueM - параметры для скрипта, которые могут как быть, так и не быть.
  • <?$PHPCODE$()?> - синтаксис вызова php функции в шаблоне системы uCoz.
Данная функция выполняет GET-запрос на указанный скрипт. Ответ для нее должен быть возвращен только в формате json.
Реализовать использование POST-запросов можно через формы, iframe, другие скрипты этого домена и т.д.

Как это выглядит на практике?

Рассмотрим на примере скрипта, который хранит какую-либо дополнительную информацию о пользователе. Скрипт создает на странице форму с дополнительными полями для текущего пользователя, которые он заполняет и нажимает кнопку "Обновить".

В шаблоне страницы добавляется код обращения к скрипту:


А в корень папки помещается файл example001.php с содержимым:



Вот так выглядит результат работы скрипта:

Результат работы скрипта

Подробнее о тонкостях работы функций можно почитать в инструкции.

API

Помимо внутреннего внедрения языка PHP мы запустили в работу функционал API.
API - на данный момент существует для всех контент-модулей, кроме форума, интернет-магазина. Импорт данных для обработки осуществляется в формате XML-RPC.
С его помощью возможен импорт данных со страниц этих модулей. Это работает как в рамках юкозовских сайтов, так и для любых других ресурсов.
Например, можно сделать кросспостинг последней статьи из блога на любой сторонний сайт. Или, на основе анализа возраста посетителей, скрывать от них материалы: например, показывать картинки только, если залогиненный посетитель старше 18-ти лет:



С техническими деталями можно ознакомиться в инструкции по API.

Планы на будущее

Далее мы планируем развивать API, добавляя его в оставшиеся модули. Через некоторое время добавится возможность API для редактирования и постинга с oauth-авторизацией.
Без развития не останутся и возможности использования PHP: исходя из реальных потребностей будут меняться установленные лимиты, добавляться необходимые функции.

Вместо заключения

К внедрению PHP мы шли несколько лет не самыми простыми путями. Самые старые наши пользователи могут еще помнить, что на вопрос, когда у нас появится эта функция, отвечалось, что "никогда”. Но времена меняются, и мы не только развиваемся, но и пересматриваем как стратегию нашего развития, так и признаем недочеты в планах.
На сегодняшний день мы являемся первопроходцами в данном направлении и единственной (в своем классе) системой в мире, которая предоставляет такую услугу.


Всего комментариев: 1341 2 3 »
+3  
1 NinjaCat   (30.03.2011 20:47)
красавчики

+2  
2 TR@JIJI   (30.03.2011 20:48)
Ура!!! Поздравляю Вас с нововведениями пользователи и огромное спасибо администрации!!!

+2  
3 job3507   (30.03.2011 21:00)
Ура!!!

+2  
4 joker7am   (30.03.2011 21:02)
Супер!!!!!! biggrin то что нужно!

+2  
5 leonP4   (30.03.2011 21:08)
Поздравляю вас товарищи, спасибо uCoz, я верил и знал что это наступил!
Quote
Самые старые наши пользователи могут еще помнить, что на вопрос, когда у нас появится эта функция, отвечалось, что "никогда”

Помним, помним. Раньше об этом даже думать не смели)) Я могу сказать лишь то, что uCoz перешел на новую ступень, и огромное спасибо программистам которые работают на благо людей и компании!

+2  
6 tyapuhy   (30.03.2011 21:10)
Дождались! Спасибо.

+1  
7 AlexPS   (30.03.2011 21:16)
что то не вижу где ее активировать?

+1  
10 Meddy   (30.03.2011 21:20)
Её - это API? Или PHP?
Если API - то в Настройки - общие настройки.почти в самом конце списка будет.
Если PHP отдельной услугой, то выбрать в раскрывающемся списке в меню "Купить от дельную услугу".

0  
13 AlexPS   (30.03.2011 21:26)
Извините, имел ввиду PHP. Я оплачиваю пакет в который входит услуга, но почему то нет ни каких ссылок на ее активацию в ПУ. Или нужно отдельно оплачивать? Или еще не на всех серверах услуга запущена? у меня 26-й

0  
17 Meddy   (30.03.2011 21:53)
т.е. у вас нету раздела [php детали] так как описано в начале мануала http://phpexample.ucoz.net/manual/ ?

0  
20 AlexPS   (30.03.2011 21:57)
да

0  
25 Meddy   (30.03.2011 22:17)
Да, есть проблема. В ближайшее время разберемся.

0  
77 krash   (01.04.2011 10:48)
Нету не в "купить отдельную услугу" ни там, где указано в мануале

0  
78 Meddy   (01.04.2011 11:28)
Вот тут нету?

+4  
8 Zlocorp   (30.03.2011 21:16)
Теперь школьники не смогут заявить, что uCoz не ТРУ потому что там нет PHP tongue

+4  
21 Mitreya   (30.03.2011 21:59)
Теперь школьники смогут заявить, что РНР не ТРУ, потому что он есть на uCoz, и примутся за Perl biggrin

+2  
34 xpacmanx   (30.03.2011 23:41)
Скорее за Ruby

+1  
9 wangog   (30.03.2011 21:18)
Прекрасно, поздравляю.

Quote (Вопрос)
Получается теперь возможно сделать сайт на нескольких языках ?!

cry


+2  
12 Meddy   (30.03.2011 21:22)
Все зависит от вашей подкованности в PHP. Но варианты того, как сделать мультиязычный сайт были и до этого.

0  
14 wangog   (30.03.2011 21:27)
Я имею введу что можно будет менять все название (который идут от uCoz) ! К примеру, идет форум на трех языках, можно перевести все переменные а сам контент который добавили юзеры уже идет на том языке, на котором они его добавили ?! cry

0  
11 Admin1622   (30.03.2011 21:21)
а когда api для добавления контента будет? и будет ли оно бесплатным?

+1  
22 Meddy   (30.03.2011 21:59)
Пока нет точных сроков, к сожалению. Да.

-3  
15 Tom_Boxer   (30.03.2011 21:34)
uCoz загнется от php

0  
16 AlexPS   (30.03.2011 21:35)
как? biggrin

0  
18 Meddy   (30.03.2011 21:54)
Мы сделали его таким образом что не загнется cool

-1  
19 G-XPert   (30.03.2011 21:57)
PHP-скрипты располагаются на отдельных серверах (не на тех, на которых расположены сами сайты), так что всё под контролем smile

-3  
23 ModeRzzz   (30.03.2011 22:15)
Не получается загрузить в ФМ файл с расширением php.

Пишет, что такое расширение запрещено.
Загрузил с другим расширением, попробовал переименовать: "файл "блабла.php" является системным"...

+4  
27 Meddy   (30.03.2011 22:21)
А вы через сторонний FTP грузили или через встроенный Файловый менеджер? Можно только через сторонний.

+2  
28 joncofe   (30.03.2011 22:21)
ФМ не используется для загрузки php скриптов. Он используется для загрузки файлов на в папку сайта, а не в php учетку (это разные сервера). Для загрузки php скриптов используйте любой ftp клиент.

+1  
24 Redrik   (30.03.2011 22:16)
Даже не верится.. biggrin
uCoz, ты супер!)

0  
26 ModeRzzz   (30.03.2011 22:20)
Извиняюсь, понял свою ошибку.

0  
29 $Vladimir$   (30.03.2011 22:34)
Quote
нету раздела [php детали] так как описано в начале мануала

Данный раздел будет доступен после оплаты услуги

+2  
30 Ignizavr   (30.03.2011 22:51)
Поздравляю!!! Честно говоря, я боялся проблем с "подвисанием", но вижу, команда Юкоза всех перехитрила и нашла выход из положения. tongue biggrin
Я пока не пользовался АПИ и даже не слишком разбирался (не успел), но появление АПИ - это здорово!
Что касается php, то на моем пакете (базовый), как я понял, этой возможности нет? Правда, мне пока и не нужно, но скоро кончается время оплаты и я подумаю, какой пакет покупать теперь...
В общем, теперь никто не скажет, что Юкоз - ерунда. Пользователи и так это знали, но болтливых снобов, увы, хватает... Теперь замолчат. smile
Удачи и успехов команде Юкоза! И спасибо вам!

+1  
32 Kurt   (30.03.2011 23:28)
В базовом пакете нет, но ничто не меняет при использовании базового пакета доплатить еще 2$ и получить пхп, когда станет нужно. Если больше ничего другого не надо, это будет более выгодно чем брать пакеты в которых пхп по умолчанию. Хотя, конечно, мы не против что бы вы переплачивали, если есть такое желание:)

0  
53 Ignizavr   (31.03.2011 12:13)
Спасибо, Курт. Про отдельную услугу я заметил, но просто люблю "оптом". Однако, посмотрел цены и понял, что Вы правы! smile А "базовый" мне вполне достаточен по возможностям.

-1  
31 $Vladimir$   (30.03.2011 23:03)
Quote (Ignizavr)
Что касается php, то на моем пакете (базовый), как я понял, этой возможности нет? Правда, мне пока и не нужно, но скоро кончается время оплаты и я подумаю, какой пакет покупать теперь...

Quote
доступна как в рамках пакетов (начиная с пакета "Расширенный 2”), так и как отдельная услуга ($1.99 в месяц)

+1  
33 xpacmanx   (30.03.2011 23:41)
Большое спасибо, за большую проделанную работу.
Приятно удивили некоторыми доработками по сравнению с альфа-версией smile
Так же приятная и оптимальная цена..Вроде всё радует smile

0  
35 steve3760   (30.03.2011 23:58)
Ну вот, а обещали и для Премиумов! sad

0  
50 Kurt   (31.03.2011 10:14)
Вы путаете. Обещалось это будет премиум-функция. О том какие пакеты будут включать ранее ничего не сообщалось. Только то что как отдельная - 2$

0  
36 adai   (31.03.2011 00:16)
Можно ли ставить скрипты и создавать отдельные странички ну например создание многофункционального чата с комнатами (к примеру)

0  
38 joncofe   (31.03.2011 00:27)
Ставить готовые сторонние решения? Можно, но с учетом особенностей реализации php в системе uCoz. Хотя поддержка php скриптов создавалась не для того, чтобы импользовать ее для установки каких-то готовых движков, а для расширения возможностей с помощью них в самой системе.

-2  
37 adai   (31.03.2011 00:26)
Ещё мне интересно изменение стандартного вида аякс окон. Будет ли это возможно? Дайте премиум пользователям возможность редактирования css стилей аякс. cool

0  
39 joncofe   (31.03.2011 00:32)
напомню, что интерпритатор php находится на отдельном сервере, поэтому есть я варианта: 1) получать исходный код код с помощью запросов, парсить, изменять на спой лад и выводить обратно; 2) использовать собственные аякс-окна

0  
56 xpacmanx   (31.03.2011 12:56)
Это и сейчас возможно..Если вы именно о стилях..Гугл в помощь

0  
58 adai   (31.03.2011 13:27)
Сейчас можно просто в своем css стиле менять писать код с изменениями, а вот старый аякс код остаётся неизменным что делает его не кроссбраузерным...например в IE отображается старый вид аякс окон, а в опере и мозилле измененный, т.е. статичный css стиль всё равно мешает полноценно изменять внешний вид...надеюсь примут какие-то меры

-1  
80 7soft   (01.04.2011 20:53)
Можно и без php это сделать. Замени тег </head> на <!-- </head> --><script type="text/javascript" src="http://s33.ucoz.net/src/u.js"></script><link type="text/css" rel="StyleSheet" href="ССЫЛКА НА CSS" /><style type="text/css">.UhideBlock<?if($USER_LOGGED_IN$)?>L<?endif?> {display:none}</style></head>

-1  
99 adai   (03.04.2011 19:22)
И что это даст? biggrin

0  
122 xpacmanx   (21.04.2011 01:13)
На вскидку:
Что мешает использовать !important?
Что мешает в head поставить какие нужно стили после стандартного юкозовского?
Что мешает в конце концов просто substr-ом вырезать эти стили и вставить на них свои?
Решения есть.

0  
40 best-portal   (31.03.2011 01:01)
жаль что базы даных нельзя использовать.

+1  
43 Meddy   (31.03.2011 01:54)
Где вы это прочитали? Можно.

0  
41 DemonStore   (31.03.2011 01:46)
очень рад включению php на ucoz(хотя его и не знаю, но все впереди smile )
ксати заметили "Тип кода безопасности (капчи)" в общих настройках?
Meddy, какие планы на дальнейшее развитие ucoz(хотя бы чуть-чуть скажите smile )?
И последний вопрос, будет ли когда-нибудь выпущена локальная версия ucoz(тоесть на какой хостинг захотел, на тот и поставил)?

+1  
44 Meddy   (31.03.2011 01:56)
Боюсь, я могу ответить только на ваш последний вопрос и ответ вам вряд ли понравится - такого не будет никогда smile
Но будет версия профессионального хостинга.

+1  
45 DemonStore   (31.03.2011 02:08)
можно поподробнее про профессиональный хостинг или ссылку на материал описывающий эту функцию(или как там...)?

+2  
54 Ignizavr   (31.03.2011 12:16)
Да, вот насчет "профессионального хостинга" пожалуйста, уточните! А то мне кажется, что и сейчас Юкоз вполне профессионален, после РНР тем более...

0  
81 7soft   (01.04.2011 21:01)
"Тип кода безопасности (капчи)" - у тебя куплен какой-нибудь пакет услуг? У меня нет такой настройки...

0  
84 DemonStore   (01.04.2011 23:09)
во время появления функции нет... но раньше был один раз куплен, а потом только рекламу(отдельно покупал) убирал...

+2  
42 Дениссисс   (31.03.2011 01:46)
теперь вы лучшие

+1  
46 DemonStore   (31.03.2011 02:09)
согласен... но многие всеравно будут оспаривать это утверждение

+1  
47 Shutich_   (31.03.2011 06:44)
Куплен пакет «Премиум 2 ($12.99)», в неё входит php, но «[php детали]» нету. Пакет был куплен пару дней назад и ждал своё активацию, сегодня активировал — но php деталей нету sad Ммм?

+1  
49 Kurt   (31.03.2011 10:12)
Чуть выше уже писали, что есть ошибка в отношении тех у кого пакеты уже оплачены (до включения возможности). Сегодня это будет исправлено и у вас все появится

+2  
72 Shutich_   (31.03.2011 17:31)
Уже появилось. Благодарю.

0  
48 torhin   (31.03.2011 09:51)
Я только учусь и мне всё нравится!
Отличная система UCOZ!!! up
Спасибо Вам!

-6  
51 МУЖЫК   (31.03.2011 10:18)
ребят, после обновления юкоза, у меня с сайтом какаято фигня творится. я дае не пойму в чем дело. - cs-lords.net.ru
с кодировками чтото, некоторые картинки оображаются , некоторые нет, не переходит по ссылкам..

+2  
52 joncofe   (31.03.2011 10:41)
Вы про какое обновление? Если про PHP, то оно не является обновлением, а является расширением (добавлением), т.к. находится на отдельном сервере и практически не изменило существующие скрипты системы.

0  
98 Rasiel   (03.04.2011 10:24)
Заплатите за доменное имя.

-5  
55 Flyntus   (31.03.2011 12:45)
Смысл использования php без sql?Я так понимаю что даже фреймворки подключить не удастся.

+1  
57 AlexPS   (31.03.2011 13:17)
смысл этого коммента?

-2  
59 adai   (31.03.2011 13:33)
Майскуэль это БД а PHP как мне известно без БД не работает, так что на юкозе тоже есть поддержка майскуэля...

+1  
62 Meddy   (31.03.2011 14:32)
PHP, как язык програмирования, прекрасно работает и без БД. Его функционал не сводится чисто к работе с базами данных. Это во первых.
Во вторых мы никоим образом не ограничили работу со сторонними базами данных. Вы можете использоваться MySQL.

+1  
65 YuriT   (31.03.2011 15:36)
Вообще-то в мануале написано, что использование функций MySQL запрещено. Да и вообще трудно представить, как это скрипт будет работать с базой, расположенной в совершенно другой сети (через все файрволы и т.п.)

Единственный реальный вариант в данном случае - это организовывать вокруг той базы враппер в виде веб-сервиса, с которым скрипт уже и будет работать.


+1  
68 joncofe   (31.03.2011 16:04)
в мануале написано, что запрещено использование:
MySQL функции (mysql_stat, mysql_pconnect)
т.е. только этих, остальные разрешены.
Я тоже считал, что это не очень востребовано, но в первый же день активации услуги несколько человек уже используют данную возможность

0  
60 CCUMC   (31.03.2011 13:40)
Да. это вы классное нововведение сделали smile happy

+2  
61 MaxL   (31.03.2011 13:41)
Я так понял API не относиться к PHP и использовать ее можно бесплатно smile
Парни, вы молодцы!
Поздравляю команду!
Я дожил до этого дня biggrin

1-30 31-60 61-68
Добавлять комментарии могут только зарегистрированные пользователи.
[ Регистрация | Вход ]