VK API Динамическая обложка вк - Как сделать динамическую обложку в группе вконтакте php скрипт бесплатно
В редакторе
VK API Динамическая обложка вк - Как сделать динамическую обложку в группе вконтакте php скрипт бесплатно
Brain_Script
11719
2017-04-04 12:26:47
<?php
//VK API Динамическая обложка вк - Как сделать динамическую обложку в группе вконтакте php скрипт бесплатно
require_once('config.php');
$tmp_image = file_get_contents('http://'.$_SERVER['HTTP_HOST'].$_SERVER['REQUEST_URI'].'img.php');
file_put_contents('cover/tmp.jpg',$tmp_image);
$cover_path = dirname(__FILE__).'/cover/tmp.jpg';
$post_data = array('photo' => new CURLFile($cover_path, 'image/jpeg', 'image0'));
$upload_url = file_get_contents("https://api.vk.com/method/photos.getOwnerCoverPhotoUploadServer?group_id=".$GroupId."&crop_x2=1590&access_token=".$token);
$url = json_decode($upload_url)->response->upload_url;
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_POST, true);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false);
curl_setopt($ch, CURLOPT_POSTFIELDS, $post_data);
$result = json_decode(curl_exec($ch),true);
$safe = file_get_contents("https://api.vk.com/method/photos.saveOwnerCoverPhoto?hash=".$result['hash']."&photo=".$result['photo']."&access_token=".$token);
print_r($safe);
// Ошибка случилась из за того, что мы не написали саму картинку img.php
// И Так я подготовил тестовую группу для примера и 3 файла php, папку fonts и в ней шрифт далее папкак cover и в ней будующая обложка
// сегодня научимся выводить последнего вошедшего пользователя а точнее его аватал имя и фамилию и время все это будет обновляться по средствам крон но мы для теста будем делать это сами ..
?>
<?php
header('Content-type: image/png');
require_once('config.php');
//Узнаем кто последний зашел в группу
$GroupMembers = file_get_contents("https://api.vk.com/method/groups.getMembers?group_id=136933185&sort=time_desc&count=1&fields=photo_100&access_token=".$token);
$GroupMembersResult = json_decode($GroupMembers, true);
//print_r($GroupMembersResult);
// Информация о последнем вступившем
$Users_Count = $GroupMembersResult['response']['count'];
$UsersName = $GroupMembersResult['response']['users'][0]['first_name'];
$UsersLastName = $GroupMembersResult['response']['users'][0]['last_name'];
$UsersPhoto = $GroupMembersResult['response']['users'][0]['photo_100'];
//--------Самое интересное - рисование------------
// Фоновая картинка
$im = @ImageCreateFromJPEG ($path.'cover/1.jpg');
// Аватар пользователя
$stamp = @ImageCreateFromJPEG($UsersPhoto);
// Цвет текста
$white = @imagecolorallocate($im, 255,255,255);
// Время
$time = date("H:i:s");
// Вывод последнего пользователя
@imagecopy($im, $stamp, 653, 50, 0, 0, imagesx($stamp), imagesy($stamp));
// Вывод имени
@imagettftext($im, 10, 0, 625, 25, $white, $path.'fonts/open-sans-bold.ttf',$UsersName);
// Вывод фамилии
@imagettftext($im, 10, 0, 638, 38, $white, $path.'fonts/open-sans-bold.ttf',$UsersLastName);
// Вывод времени
@imagettftext($im, 10, 0, 20, 185, $white, $path.'fonts/open-sans-bold.ttf',$time);
//На этом все почти:)
// успешно загружено
imagejpeg($im, NULL, 100);
imagedestroy($im);
?>
<?php
// Не трогать
$path = dirname(__FILE__).'/';
// Токен группы
$token = '';
//ID группы
$GroupId = '';
// временная зона
$TimeZone = 'Asia/Novosibirsk';
// тут вани настройки
?>
Войдите для добавления комментария.