Это стандартный механизм, можно добавить проверок и защиту от SQL-инъекций.
Примерная логика:
if (isset($_POST['login']) && isset($_POST['pass'])) {
$login = $_POST['login'];
$pass = $_POST['pass'];
// Проверка наличия данных
if (empty($login) || empty($pass)) {
throw new Exception('Login and password cannot be empty');
}
// Подготовленный запрос для вставки данных
$stmt = $pdo->prepare("INSERT INTO users (username, password) VALUES (:username, :password)");
// Биндинг параметров
$stmt->bindParam(':username', $login);
$stmt->bindParam(':password', $pass);
// Проверка ошибок
if ($stmt->errorCode() !== 0) {
throw new Exception($stmt->errorInfo()[2]);
}
// Выполнение запроса
$stmt->execute();
// Проверка результатов
if ($stmt->rowCount() === 1) {
// Запрос был выполнен успешно
} else {
// Запрос не был выполнен успешно
}
} else {
throw new Exception('Login and password must be provided');
}
Отправляются они в DefaultController.
Создаю переменные $login, $pass
И методом POST делаю следующее
$login = $_POST['login'];
$pass = $_POST['pass'];
Короче вопрос в следующем
Грамотно ли я делаю и как сделать данный процесс лучше, может существуют аналоги и более практичные варианты?