My Social Network
Создано: 19.10.2025
Перевод: Тебеков Максим Валерьевис
Электронная почта: maxim.tebekov@yandex.ru
Сайт: vuxe.ru
Скачать бесплатно My Social Network
Спасибо, что загрузили My Social Network. Если у вас есть вопросы, выходящие за рамки этого файла с инструкциями, пожалуйста, обращайтесь по электронной почте через контактную форму на моей странице здесь Большое спасибо!
Ведь в этой документации мы научимся как установить My social Network и как создать приложение для My social network
Видео Уроки смотрите
1) Обзор
- Для загрузки файлов на сервер используйте специализированные программы, например FileZilla
- Будьте осторожны при загрузке файлов на сервер! MacOS (возможно, и Linux тоже) скрывает файлы .htaccess, и вы не сможете загрузить файлы с данными на сервер — это приведёт к ошибкам. Первый файл .htaccess находится в корневом каталоге сервера, а второй — в папке «public»
- Для редактирования PHP-файлов используются специальные редакторы, например: Sublime Text, phpStorm, Notepad ++. Не используйте стандартный редактор Windows: Notepad! Notepad может изменить кодировку PHP-файла, и вы получите ошибку!
Это важно, пожалуйста, прочтите:
Ответы на многие дополнительные вопросы вы можете найти на моём сайте в разделе «Помощь» https://vuxe.ru/index.php?do=feedback
error_reporting:
По умолчанию для error_reporting установлено значение E_ALL.
Чтобы установить для error_reporting значение 0, отредактируйте файл public/index.php
Все пользовательские данные очищаются с помощью следующего кода (функции можно редактировать в файле: class/class.helper.inc.php):
static function clearText($text) {
$text = trim($text);
$text = strip_tags($text);
$text = htmlspecialchars($text);
return $text;
}
static function clearInt($value) {
$value = intval($value);
return $value;
}
2) Шаг за шагом
Здесь я опишу основную последовательность действий.
Серверная часть:
- Подготовьте хостинг. Создайте пустую (новую) базу данных и т. д.
- Загрузите файлы на сервер. Пример см. здесь: https://dzen.ru/a/aR3O0ydxXFZrjGjK
- Используйте лучший хостинг TIMEWEB
- Не забудьте про файлы .htaccess! Например, в MacOS файлы .htaccess скрыты, и вы можете загрузить скрипт без файлов .htaccess, но получите ошибку 500. Будьте внимательны!
- Настройте конфигурацию веб-части (ваш сервер/sys/config/db.inc.php). Смотрите здесь
- Введите в браузере: yousite.com/install и установите скрипт
- Если на вашем сервере используется PHP 7.x, прочтите файл «addons\readme.txt»
- Настройте reCaptcha для сайта: Как добавить Google reCaptcha v3 на свой сайт?
- Как настроить вход через Google — смотрите здесь: Как настроить вход через Google?
Приложение для Android:
- Откройте проект в Android Studio
- Переименовать пакет
- Настройте FCM. Смотрите здесь
- Настройте конфигурацию приложения (constants/Constants.java). См. здесь
- Запустите приложение для тестирования.
Приложение XCode:
- Откройте окно терминала в каталоге проекта и введите: pod install (на вашем Mac должен быть установлен Cocoapods: https://cocoapods.org/)
- Откройте проект в XCode, используя файл SocialNetwork.xcworkspace
- Переименуйте проект (я рекомендую не менять названия папок SocialNetwork и проекта). Существует множество способов переименования проекта. Я использую http://stackoverflow.com/a/35500038
- Настройте конфигурацию приложения (Constants.swift). См. здесь
- Запустите приложение для тестирования.
Я описываю только основные этапы! Дополнительную информацию о настройке можно найти в документации и комментариях (в файлах конфигурации)
Некоторая информация:
- Ошибка 500, обычно это происходит по следующим причинам: 1) Не введены или введены неправильно данные из базы данных в конфигурации db.inc.php. 2) На сервер не загружены файлы .htaccess. 3) Модуль mod_rewrite не работает или не установлен. 4) Вы используете сервер nginx . В любом случае подробности можно найти в журнале ошибок сервера
- Я не использую локальный сервер для тестирования и разработки. Только реальный сервер (хостинг).
- Я использую Linux-хостинг с Apache, PHP и MySQL
- Большинство пользователей выбирают хостинг GoDaddy
- Серверная часть не работает должным образом на хостинге Wordpress (возможно, проблема в файлах .htaccess на хостинге Wordpress)
- Я не использую эмуляторы. Для тестирования и разработки я использую только реальные устройства. Причина: например, FCM не работает на эмуляторе. Иногда работает ;)
- Я всегда использую последнюю версию Android Studio
- Страница входа в панель администратора: yousite.com/admin/login
- Файл «mysql» не нужен! Таблицы в базе данных создаются автоматически!
- Не копируйте папку с проектом Android Studio в каталог с длинным именем! Android Studio не поддерживает пути длиной более 240 символов! Пример правильной структуры каталогов: C:\myprojects\socialnetwork
- На вашем Mac должна быть установлена программа CocoaPods
- Я рекомендую (для версии iOS): не менять названия папок SocialNetwork и Project.
3) Процесс установки Php
Настройте серверную часть всего за три простых шага!
Загрузите файлы на стороне сервера на сервер. Убедитесь, что файлы загружены в корневой каталог домена и что файл .htacces также загружен (Linux и iOS могут скрывать файлы такого типа, и такую ошибку легко допустить)
- Откройте и отредактируйте файл config/db.inc.php (отредактируйте данные на выбранном изображении)
2. Загрузите скрипт на корневой сервер.
3. Откройте в браузере: http://ваш_сайт.com/install (вы создаёте первого пользователя, которому будет предоставлен полный доступ к панели администратора).
Если вы правильно выполните три простых шага, браузер автоматически перенаправит вас в панель администратора!
4) Настройте приложение для Android
Приложение для Android, созданное с помощью Android Studio.
Структура приложения для Android — это стандартная структура проекта в Android Studio. Чтобы начать работу с приложением, вам нужно изменить несколько констант:
- Откройте проект в редакторе (желательно в Android Studio). Возможно, вам потребуется изменить расположение Android SDK в структуре проекта (Ctrl + Alt + Shift + S).
- Измените API_DOMAIN на свой домен (файл Constants.java). Также вы можете изменить значения: CLIENT_ID, BILLING_KEY, WEB_SITE, API_DOMAIN.
3. Измените app_name, app_version, app_year, app_copyright, app_email, app_site, facebook_app_id и banner_ad_unit_id
4. Подключите своё приложение к Firebase — https://dzen.ru/a/aR3NVWvht0gbVsdi
5. Как настроить Firebase Cloud Messaging API — см. ниже и указать SENDER_ID и ключ сервера в db.inc.php (GOOGLE_API_KEY = ключ сервера Firebase, GOOGLE_SENDER_ID = идентификатор отправителя Firebase)
5) Процесс установки XCode
Настройте проект XCode за несколько простых шагов!
- Откройте и отредактируйте файл Constants.swift (отредактируйте данные на выбранном изображении)
2. Идентификатор пакета и название приложения (отредактируйте данные на выбранном изображении)
3. Установите собственные идентификаторы AdMod
4. Я рекомендую не менять названия папок SocialNetwork и Project.
6) Добавление нового языка (веб-сайт)
Добавить новый язык очень просто! Давайте рассмотрим пример добавления немецкого языка:
- Скопируйте файл sys/lang/en.php в sys/lang/de.php;
- Создание файла перевода, который копируется (sys/lang/de.php), на немецком языке;
- Откройте файл sys/config/db.inc.php и в конце файла добавьте строку: $ LANGS ['Deutsch'] = "de";
7) Как добавить поддержку эмодзи?
Осторожно! Это важно!
Для корректного хранения эмодзи в базе данных требуется MySQL версии не ниже 5.5.3! Перед выполнением любых действий необходимо создать резервную копию всех баз данных, которые будут изменены!
- Узнайте, какая версия MySQL установлена на вашем сервере. Набор символов utf8mb4 появился в MySQL начиная с версии 5.5.3. Если у вас более ранняя версия, вам нужно обновить сервер MySQL или попросить об этом системного администратора.
- Откройте файл sys/config/db.inc.php.
- Найдите константу EMOJI_SUPPORT и установите значение TRUE
- Сохраните файл.
- Введите в браузере: http://yousite.com/enable_emoji и нажмите Enter (база данных будет автоматически исправлена).
- Если всё сделано правильно и версия MySQL не ниже 5.5.3: всё будет работать!
Я не стал использовать набор символов по умолчанию utf8mb4, потому что у некоторых пользователей на серверах установлена версия MySQL ниже 5.5.3
Исправление доступно только в таблицах сообщений, постов и комментариев! Это значит, что эмодзи поддержки будут добавляться только в личные сообщения, посты и комментарии!
8) Как выполнить обновление?
Осторожно! Это важно!
Папки «Android-проект (клиент)», «Серверная часть» и «iOS-проект (клиент)» всегда содержат последнюю полную версию.
- Обновите все файлы или только файлы в папке «Update_v7.7_to_7.8» (только если вы переходите с версии v7.7 на версию 7.8)
- После обновления файлов введите в браузере (для исправления базы данных): yousite.com/update
Будьте внимательны! В папке «Update_v7.7_to_7.8» содержатся только изменённые и новые файлы.
9) Как подключить оплату через Stripe (WESITE)?
- Зарегистрируйтесь или войдите в систему Stripe: https://dashboard.stripe.com/register
- Скопируйте ключи вашего тестового api
4. Вставьте значения ключей в константы в файле конфигурации "sys/config/db.inc.php":
5. Чтобы получать реальные платежи, вам нужно активировать свою учётную запись Stripe и создать/получить реальные API-ключи
10) Как добавить товары для продажи?
В Play Console перейдите в раздел (1) «Монетизация с помощью Play», выберите пункт меню (2) «Продукты в приложении» и нажмите (3) «Создать продукт»
Введите (1) «Идентификатор продукта», (2) «Название продукта» и (3) «Описание продукта», (4) «Цену продукта» и нажмите (5) «Сохранить»
Нажмите (1) «Активировать» после сохранения
11) Как настроить Firebase Cloud Messaging API?
В консоли Firebase в вашем проекте Firebase нажмите (1) на кнопку «Шестерёнка», выберите (2) пункт меню «Настройки проекта» и скопируйте (3) «Идентификатор проекта» и (4) «Номер проекта»
В конфигурационном файле сервера «sys/config/db.inc.php» установите для параметра «Идентификатор проекта» значение «FIREBASE_PROJECT_ID», а для параметра «Номер проекта» — значение «GOOGLE_SENDER_ID»
Если вы ранее настроили Google Cloud Storage, Cloud Vision или OTP в своём проекте, а также создали и загрузили на сервер «файл учётной записи службы», пропустите следующие шаги
Вам нужен файл учётной записи службы на стороне сервера. Снова перейдите в «Настройки проекта», выберите вкладку (1) «Учётные записи служб», нажмите кнопку (3) «Создать новый закрытый ключ»
Скопируйте загруженный файл JSON в папку на стороне сервера «public\js\firebase» (для My Social Network или TkReels) или в каталог «js\firebase» (для проекта Dating App).
12) Как настроить вход через Google?
В консоли Firebase в вашем проекте Firebase нажмите (1) на пункт меню «Аутентификация», выберите вкладку (2) «Способ входа», нажмите кнопку (3) «Добавить нового поставщика», выберите (4) «Google» и нажмите переключатель (5) (в положение «Включено»), нажмите кнопку (6) «Сохранить»
В консоли Firebase в вашем проекте Firebase нажмите (1) на пункт меню «Аутентификация», выберите вкладку (2) «Настройки», нажмите на пункт меню (3) «Авторизованные домены», нажмите кнопку (4) «Добавить домен», введите имя своего домена (5) и нажмите кнопку (6) «Добавить»
Перейдите в Google Cloud Console и откройте раздел (1) «Учетные данные», выберите в разделе «Идентификаторы клиентов OAuth 2.0» (2) «Идентификатор клиента (обычно он называется «Веб-клиент», автоматически создается сервисом Google)».
Добавьте своё доменное имя с протоколом https (1), добавьте своё доменное имя + «/google» также с протоколом https (2), скопируйте (3) «Идентификатор клиента» в файл конфигурации сервера db.inc.php в константу GOOGLE_CLIENT_ID, скопируйте (4) «Секретный ключ клиента» в файл конфигурации сервера db.inc.php в константу GOOGLE_CLIENT_SECRET, нажмите кнопку «Сохранить»
13) Как добавить Google reCAPTCHA v3 на свой сайт
Перейдите по ссылке https://www.google.com/recaptcha/admin/create
(1) Введите название своего проекта. (2) Выберите reCAPTCHA v3. (3) Введите доменное имя. (4) Примите правила (5) Нажмите «ОТПРАВИТЬ»
(1) скопируйте ключ сайта в значение константы RECAPTCHA_SITE_KEY в файле конфигурации сервера db.inc.php (2) скопируйте секретный ключ в значение константы RECAPTCHA_SECRET_KEY в файле конфигурации сервера db.inc.php
14) Как включить Google Cloud Vision?
Перейдите в Google Cloud Console https://console.cloud.google.com и выберите свой проект
В разделе «Библиотека API» введите в поле поиска «cloud vision api» и нажмите Enter
На странице результатов выберите «Cloud vision Api», нажмите кнопку (1) «Включить»
Если вы ранее настроили FCM (Push-уведомления), Google Cloud Storage или OTP в своём проекте, а также создали и загрузили на сервер «файл учётной записи службы», пропустите следующие шаги
Вам нужен файл сервисного аккаунта на стороне сервера. Перейдите в консоль Firebase https://console.firebase.google.com и выберите свой проект. В разделе «Настройки проекта» выберите вкладку (1) «Сервисные аккаунты», нажмите кнопку (3) «Создать новый закрытый ключ»
Скопируйте загруженный файл JSON в папку на стороне сервера «public\js\firebase» (для My Social Network или TkReels) или в каталог «js\firebase» (для проекта Dating App).
15) Как включить Google Cloud Storage?
Перейдите в консоль Firebase https://console.firebase.google.com/ и выберите свой проект
Нажмите (1) «Создать» и выберите пункт меню (2) «Хранилище»
Нажмите кнопку «Get Started»
Выберите «Производственный режим» и нажмите «Next»
Выберите (1) местоположение и нажмите «Done»
Перейдите в раздел «Usage and billing»
Вкладка «Сведения и настройки», нажмите «Modify plan»
Выберите «Оплата по мере использования» и нажмите «Выбрать тарифный план»
Выберите свой расчётный счёт и нажмите «Продолжить»
Если вы ранее настроили FCM (Push-уведомления), Cloud Vision или OTP в своём проекте, а также создали и загрузили на сервер «service account file», пропустите следующие шаги
Вам нужен файл сервисного аккаунта на стороне сервера. Перейдите в консоль Firebase https://console.firebase.google.com и выберите свой проект. В разделе «Настройки проекта» выберите вкладку (1) «Service accounts», нажмите кнопку (3) «Generate new private key»
Скопируйте загруженный файл JSON в папку на стороне сервера «public\js\firebase» (для My Social Network или TkReels) или в каталог «js\firebase» (для проекта Dating App).
A) Структура PHP-движка
Структура проекта состоит из четырёх основных каталогов:
1. html/admin — каталог, содержащий HTML-файлы панели администратора.
2. app — каталог, содержащий методы, вызываемые из приложения.
3. sys/class — каталог, содержащий файлы классов PHP.
4. html/common — каталог, содержащий файлы верхнего и нижнего колонтитулов, а также панели администратора.
5. sys/config — каталог, содержащий файлы, необходимые для работы и настройки приложений: файлы конфигурации.
6. sys/core — каталог, содержащий файлы, необходимые для работы и настройки приложений: файлы конфигурации.
7. public/css — каталог, включающий следующие файлы: css.
8. public/img — каталог, содержащий следующие файлы: файлы изображений.
9. public/js — каталог, включающий следующие файлы: js.
B) Часто задаваемые вопросы
1. Где изменить строку с указанием времени (1 минуту назад, 10 часов назад)?
Просмотрите и отредактируйте файл class/class.language.inc.php на стороне сервера.
2. Почему я не могу отправлять сообщения gcm?
Сначала проверьте, включен ли на сервере модуль curl (это самая распространенная проблема). Проверьте настройки своего приложения в Google Console
3. Почему я не могу загрузить изображение?
Установите права доступа для каталога (на стороне сервера) для файлов cover, images, photo, chat_images: 755
4. Как изменить название пакета?
Есть много способов сделать это (воспользуйтесь поиском Google). Лично я предпочитаю делать так: http://stackoverflow.com/questions/16804093/android-studio-rename-package
5. Где изменить текст в разделах «Благодарности» и «Условия использования»?
На стороне сервера находятся файлы:
app\v2\method\app.thanks.inc.php
app\v2\method\app.terms.inc.php
и папка html\terms
6. Как перевести приложение на другой язык?
Все строковые константы в файле strings.xml (проект для Android). Временные константы в файле class/class.language.inc.php (серверная часть)
7. Что такое CLIENT_ID?
CLIENT_ID — целое число, по которому сервер (скрипт) идентифицирует ваше приложение для Android. CLIENT_ID — вам нужно создать (сгенерировать) его самостоятельно! Например: 1754
8. Как изменить значок и логотип приложения?
Смотрите скриншоты:
9. Как изменить логотип и другие изображения на сайте?
Все изображения находятся в папке /public/img/
10. Как изменить нижний колонтитул, главную страницу, верхнюю панель и боковую панель?
Все файлы находятся в папке /html/common/
11. Как изменить цветовую схему приложения?
Все цветовые константы в файле «res/values/colors.xml»
12. Как изменить цветовую схему сайта?
Вам нужно отредактировать файл public/css/style.css
13. Как изменить значок уведомлений в приложении?
Файл «res/drawable/ic_action_push_notification.png»
14. Как изменить боковую панель?
Файл «server/html/common/sidebar.inc.php»;
15. Как изменить нижний колонтитул?
Файл «server/html/common/footer.inc.php»;
16. Забыли пароль администратора от панели управления?
- Удалите таблицу «admins» в базе данных с помощью phpMyAdmin
- Создайте новую учётную запись администратора: yousite.com/install
17. Функция восстановления пароля не работает?
Единственная возможная проблема: неправильные настройки SMTP! Настройки SMTP-запроса у вашего хостинг-провайдера
18. Хотите ли вы изменить начальный экран в приложении?
Например, вы хотите, чтобы страница «Лента» открывалась после запуска приложения. Измените строку 100 в MainActivity.java: displayView(3) на displayView(4)
19. Не работает функция восстановления пароля в Hotmail и Yahoo Mail?
Проблема не в скрипте и не в модуле phpmailer! Читайте здесь: https://stackoverflow.com/a/41515497 и здесь https://github.com/PHPMailer/PHPMailer/issues/238