Во первых, разберитесь с форматированием кода. С таким форматированием вообще никогда не разберетесь.
Традиционная ссылка для начинающих в PHP
https://www.phptherightway.com/$password = md5($password);
Традиционная ссылка по хешированию паролей
php.net/manual/ru/faq.passwords.php
Так же гуглим готовые решения по аутентификации/авторизации. Пример
https://cartalyst.com/manual/sentinel/2.0$sql ="INSERT INTO log (login,password,email)
VALUES ('$login','$password','$email')";
Традиционная ссылка на документацию по PDO
php.net/manual/ru/book.pdo.php
Не подставляйте переменные в запрос, гуглим "SQL-иньекции".
Никогда не используйте подавление ошибок ("@"). Никогда не включайте необработанный пользовательский ввод в HTML и вообще в любой ответ сервера. Гуглим "XSS-иньекции".
?>
Не ставьте
?>
в конце PHP файла так как:
Если файл содержит только код PHP, предпочтительно опустить закрывающий тег в конце файла. Это помогает избежать добавления случайных символов пробела или перевода строки после закрывающего тега PHP, которые могут послужить причиной нежелательных эффектов, так как PHP начинает выводить данные в буфер при отсутствии намерения у программиста выводить какие-либо данные в этой точке скрипта.
php.net/manual/ru/language.basic-syntax.phptags.php
Проверку на уникальность делается обычным SQL запросом на получение пользователя с введенным логином. Уникальность пользователя с определенным логином гарантируется уникальным индексом на уровне БД.
Основной принцип такой: сперва изучаем, узнаем как правильно, потом уже пытаемся реализовать, а не мучаемся 3 дня с двумя строчками кода.
А прежде чем задать вопрос указываем что конкретно не получилось и какая ошибка.