Всем привет! Только начал учить и уже завис на такой проблеме. Беру данные для объекта из формы Объект: PHP: class Client { private $companyName; private $phone; private $email; private $website; public function __construct(array $data) { $this->companyName = isset($data['company_name']) ? $data['company_name'] : 'undefined'; $this->phone = isset($data['phone']) ? $data['phone'] : 'undefined'; $this->email = isset($data['email']) ? $data['email'] : 'undefined'; $this->website = isset($data['site']) ? $data['site'] : 'undefined'; } //Стандартные геттеры и сеттеры для полей $companyName, $phone, $email, $website } База данных: PHP: Class ClientsDB extends mysqli { ... public function __construct() { $this->connection = new mysqli($this->host, $this->username, $this->password, $this->db); $this->checkConnection(); } public function insert($companyName = 'undefined', $phone = 'undefined', $email = 'undefined', $website = 'undefined') { // Escaping string for prevent SQL Injections $companyName = $this->connection->escape_string($companyName); $phone = $this->connection->escape_string($phone); $website = $this->connection->escape_string($website); $email = $this->connection->escape_string($email); $sql = "INSERT INTO clients.clients (company_name, phone, email, site) " . "VALUE ('$companyName', '$phone', '$email', '$website' )"; echo '<p>Result of query: </p>' . $this->connection->query($sql) ? 'true' : 'false'; } } Форма: HTML: <form action="index.php" method="post" autocomplete="off"> <input placeholder="Company Inc." required type="text" name="companyName"> <input type="tel" placeholder="+79001202030" name="phone"> <input required type="text" placeholder="e-mail@domain.com" name="email"> <input required type="text" placeholder="website.net" name="website"> <button type="submit" class="btn btn-raised btn-primary" name="add_client">Add client</button> </form> Отлов POST'а PHP: if (isset($_POST['add_client'])) { $company_name = $_POST['companyName']; $site = $_POST['website']; $phone = $_POST['phone']; $email = $_POST['email']; $c_data = [ $company_name, $phone, $email, $site ]; $c = new Client($c_data); echo $c; $database->insert($c->getCompanyName(), $c->getPhone(), $c->getEmail(), $c->getWebsite()); } На выходе в таблице получаю четыре поля undefined в строке (я их инициализировал в функции insert класса ClientsDB), что говорит о том, что в POST не передались (либо я плохо их поймал) значения companyName, phone, email, website. Что я делаю не так? Нужны именно введенные значения из формы в таблице. И код в стиле ООП. Хелп
Тут ни у кого нет интерпретатора в голове. Отлаживайте. Но если вы считаете, что это ООП, то вы глубоко заблуждаетесь
https://github.com/MouseZver/Mouse_Project/blob/master/inc/Page/register/init.php посмотри тут во функции РегистрАккаунт как реализована проверка POST