<MyRusakov.ru />

React JS, Redux, ES2015 с Нуля до Гуру

React JS, Redux, ES2015 с Нуля до Гуру

Данный курс - это обширный курс по JavaScript и фреймворку React, который позволит Вам с нуля создавать мощные современные, динамические JavaScript-приложения.

Вы узнаете о тонкостях работы с "профессиональным" JavaScript, а так же узнаете о нововведениях в его новый стандарт ES2015, Вы узнаете, как организовать профессиональное окружение для FrontEnd, изучите профессиональный фреймворк - ReactJS.

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

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

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

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

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

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

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

Форум сайта MyRusakov.ru

Страницы пользователя
17.10.2011 23:40:25 Страницы пользователя Сообщение #1
brussens

brussens

Мега-мастер

Мега-мастер

Дата регистрации:
11.10.2011 22:50:07

Сообщений: 438

Михаил, объясните пожалуйста, как сделать страницы пользователей, например, что бы, если пользователь заходит на свою страницу, отображались его данные, а если заходит на чужую, отображались данные того пользователя, кому принадлежит страница? Для этого ведь используется один шаблон, а саму работу выполняют классы? Например абстрактный родительский класс, например <?php abstract class user
И наследуемые классы,например класс my_page и user_page?
Профиль Ответить
17.10.2011 23:44:06 Страницы пользователя Сообщение #2
Admin

Admin

Администратор

Администратор

Дата регистрации:
27.05.2010 21:23:42

Сообщений: 3063

Пользователь авторизуется благодаря записи в сессию (или cookie) его данных. Анализируя эти данные можно выводить любую информацию о нём на той странице, где должны выводиться данные пользователя. На других страницах выводятся данные чужих пользователей, без анализа сессии пользователя. По сути, это действительно один шаблон (хотя необязательно), но обрабатывать этот шаблон могут разные классы. И один класс выведет данные из сессии (получится данные текущего пользователя), а другой класс будет выводить данные других пользователей, например, по GET-запросу.
Профиль Ответить
17.10.2011 23:48:19 Страницы пользователя Сообщение #3
brussens

brussens

Мега-мастер

Мега-мастер

Дата регистрации:
11.10.2011 22:50:07

Сообщений: 438

Спасибо))) Значит всё делается через сессию, примерно понял)
Конечно кое что ещё не слишком понятно, поэтому пойду перечитаю статьи ваши ещё раз))))
Если что, можно будет тут отписываться, что бы не плодить темы на форуме?
P.S.: Михаил, мне кажется было бы не плохо, если бы у вас появилась что нибудь, на подобие личного блога, где пользователи могли бы писать о том, что не получается) Опять таки же это только мысль)
Профиль Ответить
17.10.2011 23:55:12 Страницы пользователя Сообщение #4
Admin

Admin

Администратор

Администратор

Дата регистрации:
27.05.2010 21:23:42

Сообщений: 3063

Если тема Ваших вопросов будет совпадать с данной темой, то можете писать прямо здесь, а если это будет вопрос по другой теме, то создавайте новую тему.
Свои проблемы пользователи могут здесь писать, а я же буду пытаться помочь. Помимо этого, всегда стараюсь тщательно смотреть, какие проблемы у пользователей возникают, чтобы почаще останавливаться на этих моментах в своих последующих статьях и курсах.
Профиль Ответить
18.10.2011 00:00:30 Страницы пользователя Сообщение #5
brussens

brussens

Мега-мастер

Мега-мастер

Дата регистрации:
11.10.2011 22:50:07

Сообщений: 438

Михаил, простите за оффтоп, но вот такой общий вопрос:
Стоит ли вообще начинать программировать с серьёзного проекта? Вот например я хочу создать соц сеть определённой направленности, понимаю что знаний для этого нужно много, но всё таки решил начать с сложного, думаю со временем всё понимается и проект можно модифицировать, как вы посоветуете?
P.S.: Мне нравится сайтостроительство, и я каждый день совершенствую свои знания. Простите, если вдруг я вас уже достал своими вопросами, просто больше не у кого спросить, а на вашем портале я практически всегда онлайн, и вот тут спрашиваю)
Профиль Ответить
18.10.2011 00:05:19 Страницы пользователя Сообщение #6
Admin

Admin

Администратор

Администратор

Дата регистрации:
27.05.2010 21:23:42

Сообщений: 3063

Ваши вопросы меня не достают. Я рад, что у меня есть старательные ученики, побольше бы таких.
Что касается сложного проекта для начинающего. 99.9%, что Вы забросите, поскольку просто запутаетесь в собственном коде. Даже уже опытные программисты умудряются настолько влезть в дебри, что уже не в состоянии из них выбраться и вынуждены просто переписывать всё заново. Но Ваша цель - это тренировка, поэтому, думаю, что будет очень здорово. Я одобряю эту идею создания сложного проекта с самого начала. Сразу получите уже неплохой опыт.
Профиль Ответить
18.10.2011 00:10:50 Страницы пользователя Сообщение #7
brussens

brussens

Мега-мастер

Мега-мастер

Дата регистрации:
11.10.2011 22:50:07

Сообщений: 438

Спасибо большое))))
Профиль Ответить
27.10.2011 21:34:48 Страницы пользователя Сообщение #8
brussens

brussens

Мега-мастер

Мега-мастер

Дата регистрации:
11.10.2011 22:50:07

Сообщений: 438

Михаил, хотелось бы по подробнее узнать про страницы пользователя, ибо теперь озадачен этим, не понимаю, как в одном шаблоне страницы можно делать сразу разные данные, расскажите по подробнее пожалуйста, заранее очень благодарен))))
Профиль Ответить
27.10.2011 22:48:08 Страницы пользователя Сообщение #9
Admin

Admin

Администратор

Администратор

Дата регистрации:
27.05.2010 21:23:42

Сообщений: 3063

Достаточно в шаблон страницы добавить элемент: %user_panel% (к примеру). Далее в коде обработать данный %user_panel% так: если пользователь авторизован, то подставить его данные вместо %user_panel%, если нет, то подставить форму авторизации (либо просто пустую строку).
Профиль Ответить
27.10.2011 22:55:52 Страницы пользователя Сообщение #10
brussens

brussens

Мега-мастер

Мега-мастер

Дата регистрации:
11.10.2011 22:50:07

Сообщений: 438

Сами данные пользователя я смог вывести, при помощи такого кода
в классе registration.php
public function verifyPassAuth() {
$result = mysql_query("SELECT * FROM users WHERE login='$this->log'"; //извлекаем из базы все данные о пользователе с введенным логином
$myrow = mysql_fetch_array($result);
if ($myrow['password']==$this->pass) {
//если пароли совпадают, то запускаем пользователю сессию! Можете его поздравить, он вошел!
$_SESSION['login']=$myrow['login'];
$_SESSION['id']=$myrow['id'];
$_SESSION['nickname']=$myrow['nickname'];
$_SESSION['name']=$myrow['name'];
$_SESSION['secname']=$myrow['secname'];//эти данные очень часто используются, вот их и будет "носить с собой" вошедший пользователь
echo "Вы успешно вошли на сайт! <a href='/index.php'>Главная страница</a>";
}
else {
//если пароли не сошлись

exit ("Извините, введённый вами login или пароль неверный.";
}
}

и на самой странице пользователя вот такой код
<?php
session_start();
?>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=windows-1251" />
<title>Главная</title>
<link href="styles/style.css" rel="stylesheet" type="text/css">

</head>

<body>
<div id="header"></div>
<div id="main">
<div id="userpanel">
<div id="ratings">
<ul id="userpan">
<?php
require_once "/includes/userpanel.php";
?>
</ul>
</div>
</div>
<div id="menubg">
<div style="clear: both;"></div>
<?php

require_once "menu.html";

?>
</div>
<div id="leftside">
<?php
echo "<li class='nickname'><strong>".$_SESSION['nickname']."</strong></li>";
?>
<div>
<?php
echo $_SESSION['secname'];echo " ";echo $_SESSION['name'];
?>
</div>
<div id="blockava">

</div>
<div class="blockbody"><h1>Обо мне</h1>
<?php
$info = array ( "Имя" => "Тимур", "Сет" => "2 часа";
foreach ($info as $a => $b)

echo "<strong>$a:</strong> $b<br />";
?>
</div>
<div id="block">
<?php
$info = array ("Дислокация" => "Краснодар", "Основной стиль" => "Minimal Techno", "Любимые стили" => "Tech house, Techno";
foreach ($info as $a => $b)

echo "<strong>$a:</strong> <a href='#'>$b</a><br />";
?>
</div>
</div>
<div id="rightside"></div>
<div id="contentside"></div>
<div style="clear: both;"></div>
</div>
<div style="clear: both;"></div>
<div id="footer"><p><a href="#">ALGEBRA &copy; 2011. Все права защищены!</a></p></div>
</body>
</html>

где userpanel.php
<?php
// Проверяем, пусты ли переменные логина и id пользователя
if (empty($_SESSION['login']) or empty($_SESSION['id']))
{
// Если пусты, то мы не выводим ссылку
echo "<li class='nickname'><a href='/registr.php'><strong>Регистрация</strong></a></li>";
echo "<li class='nickname'><a href='/login.html'><strong>Вход</strong></a></li>";
}
else
{

// Если не пусты, то мы выводим ссылку
echo "<li class='nickname'><a href='/userpage.php'><strong>".$_SESSION['nickname']."</strong></a></li><li class='rating'><strong>Рейтинг: <a href='#'>107,5</a></strong></li>";
echo "<a href='logout.php'>Выйти</a>";
}
?>

Интересно именно, как выводить информацию не самого пользователя, а если пользователь находится на чужой страничке, как выводить именно другого человека информацию
Профиль Ответить