Как написать социальную сеть на php

Как написать социальную сеть на php

Цикл уроков по созданию социальной сети на php

Всем привет, на этой странице я буду выкладывать все видео уроки из цикла уроков по созданию социальной сети на php.
Там я расскажу вам как создать сою социальную сеть на подобии одной из самых популярнейших социальных сетей в России.
Прошу строго меня не судить, так как первый видео урок я писал в 3 часа ночи=)

Просмотров страницы: 15819

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

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

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

Комментарии (9)

Никита Выборнов 13 Октября 2013 в 21:39
постоянно выскакивает куча ошибок(

Warning: mysql_connect() [function.mysql-connect]: Access denied for user ‘root’@’localhost’ (using password: YES) in C:\OpenServer\domains\localhost\config.php on line 3

Warning: mysql_select_db() expects parameter 2 to be resource, boolean given in C:\OpenServer\domains\localhost\config.php on line 4
Вот к примеру,решаю одну проблему появляются 3((как сделать?

Олег Пальгов 16 Октября 2013 в 22:16
Ну во первых, у вас отправляется более одного заголовка в браузер пользователя, проверьте, это, а вторая проблема это то что вы указываете неверный пароль к базе данных, отличный от верного! Не копируйте пароль с моего видео урока, у вас он совершенно другой! Стандартно пароль у денвера это пустой пароль!

И третья ошибка это вы пытаетесь извлечь либо данные из несуществующего столбца или таблицы, или вы просто указали неверные имя таблицы или столбца в таблице mysql

Andrei Postolache 17 Октября 2013 в 16:26
Здраствуйте, Олег.

У меня показывает ошибку: Parse error: syntax error, unexpected ‘=’, expecting T_VARIABLE or ‘$’ in Z:\home\social\www\config.php on line 4
Вы так писали:
$ = mysql_connect («localhost»,»root»,»1″);
в смысле што у вас пароль 1, но у меня нет пароли и я писал без 1
$ = mysql_connect («localhost»,»root»);
подскажите пожалуйста, я верно пишу?

Andrei Postolache 17 Октября 2013 в 16:27
Заранее, спасибо.
Александр Никитин 25 Октября 2013 в 17:38
Нет не правильно должно быть так
$db = mysql_connect («localhost»,»root»,»»);
mysql_select_db(«sozsetitd»,$db); вроде так
Олег Пальгов 25 Октября 2013 в 19:31
Да, все верно. Я просто ответил Андрею в вк.
Andrei Postolache 27 Октября 2013 в 16:05
Добрый день, Oleg.

И пишет Internal Server Error

ни social/ ни открывает ни social/index?p=reg

помоги, пожалуйста
С уважением, Andrei.

Источник

Социальная сеть на PHP: вступление.

Всем привет! Рад сообщить вам, что это первая статья из серии, где мы рассмотрим, как самостоятельно создать социальную сеть на PHP.

Конечно, это не будет уж очень грандиозная сеть, а только лишь начало, однако этого вам хватит для того, чтобы развивать проект, и, возможно, именно ваша сеть станет самой популярной! 🙂

Теперь поговорим о том, какой функционал она будет иметь и как будет сделана. За основу мы возьмем Framework Laravel, т.к. он очень современный, быстрый и достаточно понятный в использовании. Функции же будут следующие:

И некоторые другие возможности. Как вы можете заметить, пройдя данный курс статей, вы сможете неплохо подучиться и заниматься расширением своего проекта дальше самостоятельно.

composer global require «laravel/installer»

После успешной установки введите следующую команду:

laravel new chatty

Это создаст папку с именем chatty(вы можете выбрать другое имя), куда будет выполнена установка последней версии фреймворка.

Теперь, если вы сделали все правильно, подключившись к локальному серверу, вы должны увидеть свежеустановленный Laravel.

На этом сегодня закончим, а продолжим уже очень скоро. Не переключайтесь! 😉

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

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

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

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

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

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

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

Я так и не понял как устанавливать этот композитор. Фиг что поймёшь

Я тоже ничего не понял

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

Copyright © 2010-2021 Русаков Михаил Юрьевич. Все права защищены.

Источник

Социальная сеть на PHP: подготовка проекта.

В этой статье мы установим пространства имен для нашего проекта и приведем его в порядок.

NameSpace

Поскольку в Laravel 5.1 все наши контроллеры и другие важные файлы используют пространства имен(namespaces), если вы перейдете в папку app/Http/Controllers/Auth и откроете, например, файл AuthController.php, то увидите следующий namespace:

Это значение по умолчанию, но мне бы хотелось сделать его немного понятнее. Давайте этим займемся. Откройте терминал, перейдите в папку с вашим проектом.

cd chatty // переходим в папку с нашим проектом
php artisan app:name Chatty // устанавливаем namespace

Теперь, если вернуться обратно в тот файл, то вы увидите, что все, что мы и ожидали, обновилось на новое имя.

Уборка

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

Итак, зайдите в app/Http/Controllers и удалите там папку Auth. Дальше зайдите в chatty/database/migrations и удалите там миграции(в их названии содержится дата). Едем дальше прямиком в chatty/resources/assets, где удаляем папку sass. Теперь удалим файл gulpfile.js, который находится в корне. Удалим также файл welcome.blade.php, находящийся по пути chatty/resources/views

Что же, кажется, мы немного привели наш проект в порядок, а в следующей статье начнем создавать базовый контроллер. Спасибо за внимание!

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

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

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

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

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

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

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

Видеоуроки будут по Framework Laravel

Скорее всего, да. В ближайшем будущем.

Видеоуроки будут по Framework Laravel и когда постарайтесь пожалуйста

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

Copyright © 2010-2021 Русаков Михаил Юрьевич. Все права защищены.

Источник

Создание социальной сети

У меня такой вопрос хочу создать свою соц сеть, но и движок тоже самому(без использования Joomla, Social Engine, Drupal и других). Не могли бы вы подробно расписать процесс создания соц сети или скинуть статью. Все эти CMS мне ужаcно не нравится из-за однообразного шаблона. Знаю что это занятие трудоемко но все равно надеюсь на помощь.

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

Создание соц сети
Здравствуйте, помогите лучше понять и представить логику создания социальной сети, которая будет.

Разработка социальной сети. Фреймворк или чистый код
Здравствуйте. Есть задача разработать социальную сеть. Вернее даже больше не социальную сеть, а.

Как узнать «кто онлайн?» в своей социальной сети
Подскажите пожалуйста, при создании соцсети, как сделать функцию которая будет проверять онлайн.

Записывайтесь на профессиональные IT-курсы здесь

Простая соц. сеть (без заморочек с нагрузкой и объемами данных) создается в три этапа:
1. Пишем ТЗ.
2. Согласно ТЗ проектируем СуБД.
3. Пишем бекэнд+фронтэнд.

Очень краткое описание для создания любого сайта. А соцсеть в глобальном смысле ничем от него не отличается

Добавлено через 3 минуты
Для начала нужна идея, чем ваша соцсеть будет лучше других, ее назначение, ее функции. Потом все эти мысли перевести в ТЗ. Исходя из него выбрать хостинг, ЯП, СУБД, дизайн. А потом приступить к реализации. Возможно это будет сначала верстка, потом БД и скрипты.

даниил232323, Сейчас работаю над созданием сети, есть пару довольно таки оригинальных идей которые не получили огромной огласки, но сейчас у меня проблема с ведением документации к этой сети так как все удержать в голове не возможно, и даже места на листочках будет не достаточно. Уже есть около десятка классов и двух десятков методов которые нужно между собой согласовать.

соц сеть в наше время и вы хотите базу MySql ( omg )

Helele, и что Вас не устраивает в мускуле?

KOPOJI, он слишком халатно относится к типизации данных. Или у него есть волшебная настройка?

Tatikoma, php вообще к ней относится лишь посредственно. Это мешает его использовать и писать серьезные проекты на нем?

PS: Могу еще отдельно рассказать почему сранивать PHP и MySQL некорректно, но это будет рассказ из серии почему нельзя космический корабль сравнивать с бубликом (т.е. ничего толкового и все равно придем к мнению, что космический кораблик по многим параметрам может напоминать бублик).

Источник

Как я делал социальную сеть в 2019

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

В сфере веб-разработки я работаю немногим более трех лет. Проект поднимался в одиночку в свободное от основной работы время и главной целью было — выпустить продукт в установленные сроки (6 мес.).

Вдохновение, идея, исследование

Будучи подростком, я начал увлекаться музыкой, живописью. Чуть позже загорелся 3D графикой и даже успел заработать на 3D моделях первые копейки. Еще пару лет спустя всерьез занялся фото- и видеосъемкой и в этот же период на уроках вокала (и такое было в моей жизни, да) познакомился с будущей женой — актрисой. Все это подтолкнуло сделать какой-нибудь проект для поддержки “веселых” судеб творческих людей. Иии? Социальная сеть? Почему бы и нет? Но это же хейтят, мол, соц. сети умирают. У кого-то умирают, а у меня получится, верно? И вообще, если есть обоснованная идея и концепция, почему бы не воплотить это в веб-страницу? Загуглив список социалочек, наткнулся на интересный вариант — stage32. На мой взгляд, это единственная серьезная зарубежная площадка, собиравшая сообщество причастных к кинопроизводству. В России аналогов на то время (начало 2017 г.) я не нашел (плохо искал?). Решено. Сделаю свой сервис, опираясь на лучшие образы, практики и UX уже существующих соц. сетей, но с уклоном к сфере театра, кино и искусства в целом.

Идеология проекта

Некоммерческий, без рекламы, максимально полезный для самих участников. Свободный, без слежки, без метрик. Защита пользовательских данных.

Первый вариант (2017 г.)

Любой проект должен начинаться с постановки и ответа на вопросы: для кого? Для чего? Какую проблему это решает (цель)? Какие есть альтернативы? Какие преимущества можно предложить? После четких и лаконичных ответов, я составляю список функциональности будущего проекта. Далее определяюсь с костяком: убираю все хотелки и фантазии из общего списка функционала и оставляю только самое необходимое — то, без чего приложение не будет функционировать. От минимального функционала подбираю стек. Ищу примеры реализации. На этом этапе уже есть общая картина: что делать, для чего и как. Весь процесс, комментарии и мысли записываю в блокнот, чтобы повторно не решать то, от чего ранее отказался.

Проектировать UI начинаю с листка бумаги и карандаша. Любой листок, который есть под рукой, идет в дело, пока мысль не убежала. Определяюсь со страницами и провожу вторую грубую итерацию уже в электронном виде (проще что-то изменить):

Далее прорабатываю эскизы детально. Вот, например, самый первый вариант страницы профиля:

Посты, комменты, лайки, альбом с фотографиями — все по классике. Из нового:
расширенный профиль для актеров, поиск по профессиям и навыкам.

Для разметки макета использовал modulargrid.org:

Пара набросков главной страницы:

Некоторые решения выглядят не совсем удачными и убираются/правятся при верстке. На этапе проектирования надо давать себе свободу и не выводить все до идеала.

После набросков десктопной версии, уделяю внимание мобильной. Графическая часть готова? Нормас. Пора кодить.

Frontend первого варианта.

В качестве бэкграунда для главной страницы я использовал библиотеку Three.js для работы с WebGL. Треугольники свободно плавают и “следят” за мышкой. Забегая вперед скажу, что в реинкарнации я отказался от Three.js и сделал на css + png, потому как библиотека весит

570кб и использовать ее для одного несложного эффекта показалось расточительством. В разработке я придерживаюсь установок: минимализм, производительность, легкость поддержки. Так как социальными сетями примерно на 3/4 пользуются с мобильных, то был отдан приоритет легковесности и скорости. Как библиотеку UI компонентов взял Bootstrap 4. Без jquery, только css. Я пробовал обертку bootstrap-vue, но как-то не зашло. Бросались в глаза невалидные html теги и хотелось свободы кастомизации. Как вы могли догадаться, фреймворк Vue. Хотелось изначально заложить хорошую индексацию поисковиками, поэтому докрутил Nuxt.

Backend первого варианта.

Laravel. Для one-man проектов vue + laravel = must have. Скорость разработки, большое сообщество, куча готовых пакетов. Архитектура API-first (бэкенд изначально разрабатывается как API).
Какое API без документации? ApiDoc отличная штука, которая умеет генерировать документацию из PHPDoc. Роутинг кастомизировал и вынес файлы роутов из единого api.php, т.е. один файл, один роут. Для удобства и для генерации документации. Вдохновение черпал из Apiato. Неплохой starter kit для API, напичканный разными паттернами проектирования и оригинальным архитектурным Porto, призванным разбить приложение на модули, но по сути ведущий к монолиту. Судя по репозиторию, проект заброшен более года назад. Скорее всего, по причине активного распространения микросервисной архитектуры.

Отдых, прокачка скиллов

Шел 2018 год. В первой версии я успел реализовать регистрацию, аутентификацию, страницу профиля с редактированием, страницу настроек. Времени по вечерам было немного. Тогда я только начинал путь vue, да и ssr на nuxt капризничал. В итоге, через 4-5 месяцев сдулся. Это был амбициозный проект и не хватило скилла его поднять, не упав самому. За 2018 год я сильно подтянулся как full stack разработчик, освоил docker и в начале 2019 начал все с нуля. Ну, почти с нуля.

Второй вариант (2019 г.), релиз

Frontend второго варианта.

От nuxt ssr я отказался — прослойка из node.js требует дополнительного внимания, да и не видел в нем нужды конкретно на этом проекте. Bootstrap заменил на Quasar — полноценный vue UI (и не только) framework (почему взял его расскажу ниже). Интерфейсы полностью переделал, ушел от вк-стайл концепции. Теперь insta-стайл. Добавил возможность создания трех типов публикаций: фото, видео и текст. В макете использовал 24 колоночную сетку. Сейчас сервис выглядит так:

Да, можно сделать верхнее меню прозрачным. Но нужно уметь хотелкам сказать “нет”. Главную страницу я в итоге нарисовал заново. Поэтому, не стоит вдаваться в детали раньше, чем будет полная картина. Рано или поздно вы захотите все изменить и не важно, насколько прекрасным было решение. Конечно же, сайт полностью адаптирован:

Когда фронт был готов на 90%, я задонатил Browserstack и протестировал приложение на Safari. Не жалею потраченных денег, потому как удалось пофиксить парочку простых, но критичных багов. Минутка бомболейло. Safari, когда вы уже начнете думать о пользователях и разработчиках? Годами не исправляете баги. Особенно залипающий скролл в модалке. Я не нашел 100% работающего способа, как заставить Safari корректно скроллить контент в модальном окне. Буду рад, если кто сталкивался и подскажет решение.

Помимо основного приложения, сделал еще и простенькую админку со своим апи:

В админке ничего примечательного. Просто UI покрытие для некоторых фич, из-за которых лень лезть в базу и править данные руками.

Backend второго варианта.

Laravel. Обязательная валидация всех входящих данных, cors заголовки, дополнительные заголовки безопасности secure-headers, следование RESTful спецификации (как-нибудь попробую JSON-RPC), Fractal для трансформации отдаваемых данных на фронт. Try-catch всего, чтобы пользователь не давил мышку, а получил внятную причину ошибки. Автоматические дампы обеих баз данных с помощью db-dumper. Какого-либо автоматизированного тестирования не писал, ибо ограничен по времени. Надо подкачаться и попробовать TDD, может получится не сильно увеличивать сроки разработки или даже сократить.

Отдельно хочется сказать, что я избегаю использования абстракций на начальных этапах проектирования, если без них сейчас можно обойтись. Их преждевременное использование ведет к усложнению модуля приложения, который может быть никогда не использован. Решайте проблемы по мере поступления. Да, соблюдать баланс между архитектурой и сроками не просто и это приходит только с опытом, но лучше потратить время на продумывание базы данных, а переписать код приложения можно в любое время. Самый важный ресурс, который у нас есть — это время. Лучше выпустить не идеальный продукт и быть первым, чем потом догонять конкурентов. А они будут.

Проблема, стагнация

Запуск состоялся в конце мая. Я начал заниматься рекламой и почти сразу наткнулся на похожий сервис. Да, они по сути реализовали такую же идею. Года на 2 раньше. Надо было лучше исследовать рынок и мониторить его постоянно на предмет новых сервисов. Но проблема даже не в этом. В процессе дискуссий, размышлений и просто жизненного опыта я пришел к выводу, что проблема трудоустроенности людей искусства намного глубже и, возможно, специализированной социальной сетью не помочь. Это рыночная проблема нехватки рабочих мест. В каком направлении развивать продукт я точно не знаю. Сейчас проект переживает стагнацию.

Источник

Читайте также:  Как правильно написать заявление о перерасчете электроэнергии
Простыми словами о самом интересном
Adblock
detector