Необоснованный profile user php. Создание профиля зарегистрированного пользователя. Скрываем «Горячие клавиши»

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

Что такое shell компания?

Shell компания, говоря упрощенно, это юридическое лицо, которое не ведет реальной хозяйственной деятельности по месту регистрации, не имеет сотрудников и существует, де-юре, в виде папки с документами . Банки, проводя проверку юрлиц – потенциальных и действующих клиентов, выделяют три признака, при соответствии хотя бы одному из них фирму, скорее всего, признают shell компанией и процесс открытия на нее нового или обслуживание существующего счета усложнится (а вероятнее всего банк откажется от сотрудничества с такой компанией вообще).

Три признака shell компании: признак первый – юрисдикция регистрации

Если юридическое лицо зарегистрировано в стране, законодательство которой не предусматривает предоставления компаниями годовой отчетности – это может стать причиной признания фирмы shell компанией. Такими юрисдикциями сейчас являются все классические оффшоры, включая БВО, Белиз, Сейшельские острова. Также могут возникнуть дополнительные вопросы к компаниям формы LP (ограниченные партнерства).

Но есть еще одно условие: «родная» юрисдикция юрлица должна быть включена в утвержденный банком список «рисковых» юрисдикций. Каждый банк самостоятельно составляет перечень таких юрисдикций.

Признак второй: отсутствие substance

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

Иными словами, компании нужен substance , узнать больше об этом понятии вы можете по .

Признак третий: нет реальной хозяйственной деятельности

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

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

Пока что все вышеизложенное актуально, в первую очередь, для Латвии, где ФКТК (Комиссия рынка финансов и капитала) выпустила разъяснения и рекомендации по поводу работы с shell компаниями. Но нет сомнений, что такой подход станет глобальным: согласно предписаниям OECD, с 2019 года банки не смогут обслуживать структуры без substance. Так что самое время привести свои компании в порядок.

Общие вопросы

Q: Профайлер показывает активность сервера, но не показывает всех запросов и сессий.

A: Не забудьте нажать кнопку Старт для начала захвата сессий.

Q: Удалось подключится к MySQL, но Сессии не показываются.

A: Neor Profile SQL работает как прокси сервер. Это значит что могут быть показаны только сессии проходящие через профайлер. Ваше приложение (или сайт) должен быть соединяться с профайлером как с обычным MySQL сервером. Профайлер использует только TCP входящие соединения. И тогда вы увидите результат в закладке Сессии.

Q: Почему в некоторых сессиях запросы с нулевым временем?

A: Запросы с нулевым временем выполняются крайне быстро без задержки. Такие запросы могли быть закешированы СУБД или выполняются очень быстро, например если у вас мощный сервер и хорошо оптимизированные таблицы.

Q: Что обозначает % во времени и длительности в сессии?

A: "Время %" - это доля от общего времени выполнения сессии. "Длительность %" - это доля от самого длительного запроса в сессии (соотношение к самому долгому запросу).

Q: Я использую JetProfiler и он в настройке проще.

A: JetProfiler получает информацию от MySQL сервера через команду "show status" и не может получить всю информацию на сервере, так как работает дискретно. Neor Profile SQL показывает абсолютно все запросы к базе данных. И это требует настройки вашего приложения для направления потока запросов через профайлер.

Q: Кнопка Профилировать в закладке SQL не показывает результат

A: Функция профилирования в SQL редакторе работает через команду SHOW PROFILES, которая была добавлена в MySQL Community Server начиная с версии 5.0.37. Проверьте свою версию сервера MySQL.

Q: Можно ли сделать профайлер консольным?

A: Для консоли используйте связку логов СУБД и tail, или специальные консольные инструменты, которых довольно много. Neor Profile SQL - это приложение для оконной ОС, которое предназначено для размещения на системе у разработчика.

Q: Профайлер работает, но почему то не отображает главный график статистики?

A: Главный график использует команду SHOW STATUS для основного сервера. Возможно у вас нет прав для запуска данной команды на сервере. Убедитесь в доступности прав на эту команду.

Q: Как запустить установщик в тихом режиме?

A: sqlprofiler-4.1.1.exe /S /D:C:Program Files (x86)Neor Profile SQL

Windows

Q: Как проверить соединение Профайлера?

A: Используйте консольный клиент MySQL для соединения с профайлером. Если вы увидите свою сессию в закладке Сессии, это значит что все настроено верно.
Например:
Потом выполните простую SQL команду:
show tables;
И посмотрите что получилось в закладке Сессии в профайлере.

Linux

Q: Не могу соединиться через localhost.

A: Linux пытается ассоциировать localhost с сокетным соединением, но Neor Profile SQL работает только с TCP соединениями. Установите в профайлере серверный адрес 127.0.0.1 вместо localhost. Тоже самое сделаете в настройках своего приложения.
Например:
mysql --host=127.0.0.1 --user=LOGIN --password=PASSWORD --port=4040

Q: Не могу соединиться с 127.0.0.1.

A: Проверьте тип соединения в вашем приложении. Можно также воспользоваться типом соединения local socket, в котором не требуется вводить значение порта.

Q: Как установить Neor Profile SQL под OpenSUSE?

A: На сегодняшний момент мы поддерживаем только пакет DEB, который работает под Ubuntu, Debian и совместимых Linux дистрибутивах. Вы можете сделать RPM файл своими силами и помочь тем самым.

Q: Почему я не могу перехватить запросы Sysbench?

A: Профайлер использует только TCP входящие соединения. Запускайте Sysbench с параметрами хоста и порта:
sysbench --test=oltp --mysql-host=127.0.0.1 --mysql-port=4040 --mysql-user=root --mysql-password=password prepare

Mac OS X

Q: Профайлер не может соединиться к серверу MAMP MySQL.

A: Проблема сетевого соединения в конфигурации MySQL:

  1. МАМР
    Бесплатная версия – скопируйте стандартный MySQL конфиг в папку
    /Applications/MAMP/conf/my.cnf
    Pro версия – откройте меню FILE – EDIT – MySQL template
  2. в конфигурации my.cnf удалите строку skip-networking
  3. в Настройках профайлера измените адрес хоста БД с localhost на 127.0.0.1

Изменение порта MySQL в вашем скрипте

В Neor Profile SQL порт по умолчанию 4040. Для сбора SQL запросов вы должны изменить в вашем скрипте стандартные значения подключения к MySQL хоста и порта 3306. Ниже приведены примеры как это сделать.

string connStr = "server=127.0.0.1;port=4040; database=YOUR_DATABASE;user=YOUR_USER;password=YOUR_PASSWORD;";
http://dev.mysql.com/doc/refman/5.1/en/connector-net-tutorials-intro.html


Изменение порта в популярных CMS

Wordpress

File: wp-config.php
Code: define("DB_HOST", "localhost:4040 ");

PrestaShop

File: config/settings.inc.php
Code: define("_DB_SERVER_", "localhost:4040 ");

OpenCart

File: config.php
Code: define("DB_HOSTNAME", "localhost:4040 ");

Этот урок хотелось бы посвятить созданию личного профиля для зарегистрированных пользователей (дополнение к уроку Создание регистрации пользователей на сайте). Теперь пользователи смогут добавить свой аватар, изменить имя и фамилию, добавить место проживания и день рождения. Для этого в таблицу users добавим несколько полей:

Теперь создадим страницу профиля profile.php и добавим на странице index.php ссылку на нее

Echo "
Мой профиль"; Теперь код самой страницы profile.php

Профиль <?php echo $login; ?>

Профиль



"; echo "".$array["name_user"]." ".$array["lastname"]."
"; switch ($array["birthdate_month"]){//Превращаем номер месяца в название case "1" : $month = "Января"; break; case "2" : $month = "Февраля"; break; case "3" : $month = "Марта"; break; case "4" : $month = "Апреля"; break; case "5" : $month = "Мая"; break; case "6" : $month = "Июня"; break; case "7" : $month = "Июля"; break; case "8" : $month = "Августа"; break; case "9" : $month = "Сентября"; break; case "10" : $month = "Октября"; break; case "11" : $month = "Ноября"; break; case "12" : $month = "Декабря"; break; } echo "Дата регистрации: ".$array["reg_date"]."
"; echo "Пол: ".$array["sex"]."
"; echo "День рождения: ".$array["birthdate_day"]." ".$month." ".$array["birthdate_year"]."
"; echo "Страна: ".$array["country"]."
"; echo "Город: ".$array["city"]."
"; if($_GET["id"] == $id_user){//Редактировать профиль может только хозяин echo "Редактировать профиль"; } }else{ print << Вход:
Логин: Пароль:
РегистрацияВосстановление пароля HERE; } ?>

Естественно перейдя на эту страницу, мы увидим стандартную аватарку noAvatar.jpg и возможно имя и фамилию, если пользователь при регистрации указал их, остальные пункты будут пусты. В самом конце этой страницы есть ссылка на страницу редактирование профиля edit.php . Код этой страницы очень легок и состоит из форм для ввода данных. Из-за довольно большого объема приводить здесь полностью я его не буду, а приведу лишь часть, полностью взять его можно будет в исходных файлах.

Все остальные формы аналогичны и будут ссылаться на один обработчик save_edit.php , который и будет вносить изменения в базу данных. Он также имеет достаточно большой код, и здесь я его тоже приводить не буду, а лишь немного расскажу, что в нем происходит (полностью код вы также с можете в исходных файлах). Первым делом мы создаем аватарку, если пользователь ее загрузил конечно, в противном случае оставляем стандартную. Если это так, то первым делом мы загружаем в папку avatars (кстати, создайте эту папку и поставьте ей права на запись 755) предварительно проверив с разрешенными расширениями. Затем создается новое изображение форматом зависящее от выбранного режима: $rezim = 1 создается квадратная картинка, $rezim = 2 картинка пропорциональная исходной. Также надо задать ширину создаваемого изображения $w и качество $quality . Созданное изображение мы сохраняем в формате jpg с помощью функции imagejpeg и генерируем для него случайное имя. Теперь нужно удалить старое изображение и обновить в базе данных на новое. На этом с изображениями все.

Все остальные пункты данного файла предназначены для обновления личных данных о пользователя и представляют собой простые запросы к базе данных для обновления полей. Предварительно перед обновлением проверяется существование входящих переменных и их безопасность с помощью stripslashes и htmlspecialchars . Если обновление происходит успешно, то мы сразу перенаправляем пользователя на страницу профиля.
Теперь сделаем так чтобы вошедший пользователь смог видеть всех остальных зарегистрированных пользователей. Для этого создадим страницу user.php , которая в цикле будет выводить всех пользователей.



Есть вопросы?

Сообщить об опечатке

Текст, который будет отправлен нашим редакторам: