<MyRusakov.ru />

Создание Интернет-магазина на PHP и MySQL

Создание Интернет-магазина на PHP и MySQL

Видеокурс "Создание Интернет-магазина на PHP и MySQL" - это уникальный курс по созданию Интернет-магазина с нуля. Особенностью данного курса является то, что создание идёт с самого начала, то есть от идеи. Далее создаётся дизайн всех необходимых страниц, после делается их вёрстка. Затем создаётся движок на PHP и MySQL, после делается Admin-панель и, наконец, готовый сайт размещается в Интернете.

Адрес созданного в этом курсе сайта: http://storedvd.ru

Всё создание сайта будет происходить на Ваших глазах, поэтому Вы легко сможете повторить весь процесс создания сложного функционального сайта уже при разработке своего портала.

Подробнее
Подписка

Подписавшись по E-mail, Вы будете получать уведомления о новых статьях.

Подписка Подписаться

Добавляйтесь ко мне в друзья ВКонтакте! Отзывы о сайте и обо мне оставляйте в моей группе.

Мой аккаунт Мой аккаунт Моя группа
Опрос

Каким движком Вы предпочитаете пользоваться?

Как работать с API ВКонтакте

Как работать с API ВКонтакте

У меня часто спрашивают, как работать с API. Наиболее, популярной задачей, связанной с API, является - работа с API ВКонтакте. В данной статье я покажу, как работать с API ВКонтакте, а, главное, покажу Вам, что все API работают по единому принципу.

Вот порядок действий, который Вам необходимо сделать, чтобы начать работать с любым API:

  1. Найти документацию по нужному API.
  2. Посмотреть примеры подключения к API. Тут могут быть разные варианты. Например, на одном сервисе потребуют секретный ключ, выдаваемый после регистрации. На втором сервисе, все запросы не требуют секретных ключей. На третьем сервисе, есть и с секретным ключом, и без варианты работы. Иногда, секретный ключ называют токеном.
  3. Скопировать простой готовый код с сайта документации и проверить его работу. Если не работает, то ищите ошибку у себя, так как едва ли она будет у сервиса.
  4. Найти в документации метод, который решает Вашу задачу.
  5. Используя примеры и описание метода, отправить правильный запрос к API.
  6. В зависимости от формата ответа, разобрать его на "составные части", а дальше уже делать то, что требуется - вывести пользователю, сохранить в файл, отправить в базу данных и тому подобное.

А в качестве примера следования данной инструкции мы разберём API ВКонтакте. Итак:

  1. Ссылка на документацию.
  2. В данном случае есть методы, которые общедоступны, а потому не требуют токена, а есть методы, требующие его.
  3. В данном случае, примеров на конкретном языке я не нашёл. Возможно, они есть, но явно не на виду. Обычно же, у API для каждого метода есть примеры на разных языках.
  4. Мы хотим вывести 5 последних записей со стены конкретного пользователя, а затем вывести их у себя на сайте. Нужный нам метод тут.

Теперь мы должны отправить запрос к API, используя описание метода. Делать мы это будем через PHP:

<?php
  $wall = file_get_contents("https://api.vk.com/method/wall.get?v=5.3&filter=others&domain=myrusakov&count=5");
  print_r($wall);
?>

В данном случае, я использую API 5.3 (v=5.3), вывожу все записи независимо от автора (filter=others) со своей страницы (domain=myrusakov) в количестве 5 штук (count=5). Думаю, что здесь всё очень прозрачно.

Мы получили ответ в формате JSON, и теперь нам нужно перейти к последнему пункту - разобрать ответ на "составные части". Дальше мы с Вами выведем записи со стены в более-менее читабельном виде на странице нашего сайта. Результирующий PHP-код:

<?php
  $wall = file_get_contents("http://api.vk.com/method/wall.get?v=5.3&filter=others&domain=myrusakov&count=5"); // Отправляем запрос
  $wall = json_decode($wall); // Преобразуем JSON-строку в массив
  $wall = $wall->response->items; // Получаем массив комментариев
  for ($i = 0; $i < count($wall); $i++) {
    echo "<p><b>".($i + 1)."</b>. <i>".$wall[$i]->text."</i><br /><span>".date("Y-m-d H:i:s", $wall[$i]->date)."</span></p>"; // Выводим записи
  }
?>

Как видите, всё очень просто. Самая сложная часть - разобрать на составные элементы. Я предпочитаю выводить результат от API через print_r, а уже затем писать обработку этого. Хотя можно посмотреть пример ответа в описании метода, а дальше уже написать парсер.

Вот так происходит работа с API ВКонтакте, и абсолютно аналогично она происходит с любым другим API.

Копирование материалов разрешается только с указанием автора (Михаил Русаков) и индексируемой прямой ссылкой на сайт (http://myrusakov.ru)!

Добавляйтесь ко мне в друзья ВКонтакте: http://vk.com/myrusakov.
Если Вы хотите дать оценку мне и моей работе, то напишите её в моей группе: http://vk.com/rusakovmy.

Если Вы не хотите пропустить новые материалы на сайте,
то Вы можете подписаться на обновления: Подписаться на обновления

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

Порекомендуйте эту статью друзьям:

Если Вам понравился сайт, то разместите ссылку на него (у себя на сайте, на форуме, в контакте):

  1. Кнопка:

    Она выглядит вот так: Как создать свой сайт

  2. Текстовая ссылка:

    Она выглядит вот так: Как создать свой сайт

  3. BB-код ссылки для форумов (например, можете поставить её в подписи):

Комментарии (6):

rysich rysich 12.12.2013 00:04:25

Остаётся только добавить, что если у кого-то не работает, обновите версию php, а то обработка json вроде бы есть только в 5.3 и выше.

Ответить

almazik2015 almazik2015 23.02.2014 01:05:06

Спасибо) Появилась хорошая идея благодаря вашей статье!

Ответить

Вшьф1501 Вшьф1501 09.11.2014 18:25:29

Все на странице выводится нормально, а это в виде "іРё РіСѓ". Есть какое-нибудь решение?

Ответить

prdie prdie 04.11.2015 21:31:52

добавьте в штекер AddCharsetDefault UTF-8

Ответить

Михаил18 Михаил18 15.02.2015 00:49:34

Данные на сервер приходят в неправильной кодировке, как это можно исправить?

Ответить

VitStar VitStar 20.06.2016 13:30:03

Добрый день! Возникла такая проблема. Мне нужно в этом же циклу вывести еще картинку и ссылку. Вы выводите то что расположено в response->items ({"response":{"count":46,"items":[{"id":76,"from_id":-119917698,"to_id":-119917698,"date":1465914200,"post_type":"post","text":"В этом году информационным партнером IV Центрального Бизнес форума \"Рывок 2016\" стал телеканал ПРО БИЗНЕС. Телеканал ПРО БИЗНЕС – первый и единственный в России телеканал, вещающий от лица реального бизнеса. http:\/\/probusinesstv.ru\/delovaya-afisha\/15296\/") Но вот ссылка и картинка находятся в attachments (,"attachments":[{"type":"photo","photo":{"id":418857496,"album_id":-7,"owner_id":-119917698,"user_id":100,"photo_75":"http:\/\/cs630728.vk.me\/v630728626\/313d9\/rps_cNu7ozU.jpg","photo_130":"http:\/\/cs630728.vk.me\/v630728626\/313da\/w9uTB_XwssQ.jpg","photo_604":"http:\/\/cs630728.vk.me\/v630728626\/313db\/HpXxmBkVuQ4.jpg","photo_807":"http:\/\/cs630728.vk.me\/v630728626\/313dc\/4v06al3Eu00.jpg","photo_1280":"http:\/\/cs630728.vk.me\/v630728626\/313dd\/jzf23NinosE.jpg","photo_2560":"http:\/\/cs630728.vk.me\/v630728626\/313de\/3K9lW_Flq5g.jpg","width":2137,"height":692,"text":"","date":1465914201,"post_id":76,"access_key":"bc6d2d3d7e6a6673cd"}},{"type":"link","link":{"url":"http:\/\/probusinesstv.ru\/delovaya-afisha\/15296\/","title":"Предприниматели Центрального федерального округа соберутся в Смоленске","description":"","image_src":"http:\/\/cs615823.vk.me\/v615823626\/1b958\/maDHKuKz39o.jpg"}}],"comments":{"count":0},"likes":{"count":1},"reposts":{"count":1}},) Каким образом оформить можно выборку ? Заранее спасибо за помощь!

Ответить

Для добавления комментариев надо войти в систему.
Если Вы ещё не зарегистрированы на сайте, то сначала зарегистрируйтесь.