Добавление фотографий
в профили пользователей.
Внесем изменения в
файл index.php
Изменим вывод
сообщений для пользователей.
<?php
include('./classes/DB.php');
include('./classes/Login.php');
include('./classes/Post.php');
include('./classes/Comment.php');
$showTimeline = False;
if(Login::isLoggedIn()) {
$userid =
Login::isLoggedIn();
$showTimeline =
True; // если пользователь залогинен, то
показываем собщения
//echo 'Logged
in';
echo
Login::isLoggedIn()."<br />";
} else {
echo 'Not logged
in';
}
// лайки
if
(isset($_GET['postid'])) {
Post::likePost($_GET['postid'], $userid);
}
// комментарии
if
(isset($_POST['comment'])) {
Comment::createComment($_POST['commentbody'], $_GET['postid'],
$userid);
}
// отображаются
посты всех, за кем следует пользователь
с id=4
$followingposts =
DB::query('SELECT posts.id, posts.body, posts.likes, users.`username`
FROM users, posts, followers
WHERE posts.user_id =
followers.user_id
AND users.id =
posts.user_id
AND follower_id =
:userid
ORDER BY
posts.likes DESC;', array(':userid'=>$userid));
//print_r($followingposts);
foreach($followingposts as $post) {
echo
$post['body']." ~ ".$post['username'];
echo "<form
action='index.php?postid=".$post['id']."' method='post'>";
if
(!DB::query('SELECT post_id FROM post_likes WHERE post_id=:postid AND
user_id=:userid', array(':postid'=>$post['id'],
':userid'=>$userid))) {
echo
"<input type='submit' name='like' value='Like'/>";
} else {
echo
"<input type='submit' name='unlike' value='Unlike'/>";
}
echo
"<span>".$post['likes']." likes</span>
</form>
<form
action='index.php?postid=".$post['id']."' method='post'>
<textarea
name='commentbody' rows='3' cols='50'></textarea>
<input
type='submit' name='comment' value='Comment'/>
</form>";
Comment::displayComments($post['id']);
echo "<hr
/><br />";
}
?>
Теперь скачаем
imgur по ссылке
https://api.imgur.com/
Сначала
регистрируем ваше приложение
https://api.imgur.com/#registerapp
Client ID:
28cddbb60c2368a
Client secret:
81e95228bd55449c0671ae32eb838493bcbc0897
Здесь инструкция:
https://api.imgur.com/oauth2
Копируем это и
вставляем в браузер:
https://api.imgur.com/oauth2/authorize?client_id=YOUR_CLIENT_ID&response_type=REQUESTED_RESPONSE_TYPE&state=APPLICATION_STATE
Подставляем
свои данные:
Нажимаем allow.
Копируем url.
Узнаем токены.
access_token:
cf181ec3d2fb5d75ceb796032e65368406362c79
refresh_token:
1b403544d8af7b42b360a729b34dce25b96c06eb
Создадим новую
страницу my-account.php
<?php
if
(isset($_POST['uploadprofileimg'])) {
$image =
base64_encode(file_get_contents($_FILES['profileimg']['tmp_name']));
$options = array('http'=>array(
'method'=>"POST",
'header'=>"Authorization: Bearer
cf181ec3d2fb5d75ceb796032e65368406362c79\n".
"Content-Type:
application/x-www-form-urlencoded",
'content'=>$image
));
$context = stream_context_create($options); //
stream_context_create — Создаёт контекст потока
$imgurURL = "https://api.imgur.com/3/image";
//print_r($_FILES);
// загрузка имеджера
$response = file_get_contents($imgurURL, false,
$context);
}
?>
<h1>My
account</h1>
<form
action="my-account.php" method="post"
enctype="multipart/form-data">
Upload a profile image:
<input type="file"
name="profileimg"/>
<input type="submit"
name="uploadprofileimg" value="Upload Image"/>
</form>
Обновим страницу
https://anastasia4.imgur.com/all/
И фото появляются
здесь.
Документация
здесь: https://api.imgur.com/endpoints/image#image-upload
Комментариев нет:
Отправить комментарий