$database = new DataBaseController(); $database->_constructor($server, $username, $password, $db); if (isset($_POST)) { //Если пришла команда на добавление пользователя. if (isset($_POST['createNewUser'])) { //Логин записываем только с прописными буквами $login = strtolower($_POST['login']); //Пароль хеширует с помощью md5. $password = md5($_POST['password']); //Имя и фамилию делаем прописными, первая строчная $userName = ucfirst(strtolower($_POST['userName'])); $userSecondName = ucfirst(strtolower($_POST['userSecondName'])); //email превращаем в прописные. $userEmail = strtolower($_POST['userEmail']); $database->connect(); $result = $database->setQuery("INSERT INTO users (username,password,name,second_name,email,role_id) VALUES ('{$login}','{$password}','{$userName}','{$userSecondName}','{$userEmail}',2)"); $result = $database->execQuery(); $database->disconnect(); echo $result; } //Если пользователь пытается авторизоваться. if (isset($_POST['autorizeUser'])) { //Введенный им логин превращаем в прописные. $login = strtolower($_POST['login']); //Пароль хешируем с помощью md5. $password = md5($_POST['password']); $database->connect(); //Получаем пользователя с полученным именем. $result = $database->getQuery("SELECT * FROM users WHERE username = '******'"); //Если таковой существует if (count($result) != NULL) {
} } echo json_encode($result); } //Когда приходит запрос на изменение информации о конкретном юристе. if (isset($_POST['changeLawyerInfo'])) { $database->connect(); //Определяем значения для заполнения $lawyerId = $_POST["id"]; $lawyerName = $_POST["name"]; $lawyerSecondName = $_POST["second-name"]; $lawyerSkype = $_POST["skype"]; $lawyerEmail = $_POST["email"]; $lawyerHangout = $_POST["hangout"]; //Устанавливаем запрос на изменение. $database->setQuery("UPDATE lawyers SET name ='{$lawyerName}', second_name = '{$lawyerSecondName}', skype = '{$lawyerSkype}', email = '{$lawyerEmail}', hangout = '{$lawyerHangout}' WHERE id = {$lawyerId}"); //Выполняем запрос и пишем результат выполнения в result. Он будет либо true, либо текстом ошибки. $result = $database->execQuery(); //Если пользователь выбирал фотку, значит перемещаем ее из временной директории в постоянную под определенным именем. //А если нет, то продолжаем выполнение. if (isset($_FILES['photo'])) { move_uploaded_file($_FILES['photo']['tmp_name'], SITE_URL . "store/lawyers-info/photos/avatar_" . $lawyerId . ".jpg"); } //Тоже самое, но для файла с резюме юриста. if (isset($_FILES['resume'])) { move_uploaded_file($_FILES['resume']['tmp_name'], SITE_URL . "store/lawyers-info/resumes/resume_" . $lawyerId . ".html"); } //Разрываем соединение с базой данных. $database->disconnect(); //Если запрос выполнился успешно, перекидываем пользователя туда, откуда он пришел. if ($result == true) {
} //Если пришел запрос на добавление нового юриста if (isset($_POST['addNewLawyer'])) { try { $userId = $_POST['userId']; $countryId = $_POST['countryId']; $cityId = $_POST['cityId']; $database->connect(); $result = $database->getQuery("SELECT * FROM users WHERE id = {$userId}"); if (!$result) { throw new Exception("ERROR: User have't selected from BD!"); } $userName = $result[0]['name']; $userSecondName = $result[0]['second_name']; $userEmail = $result[0]['email']; $database->setQuery("INSERT INTO lawyers (city_id, country_id, user_id, name, second_name, email) VALUES ({$cityId}, {$countryId}, {$userId}, '{$userName}', '{$userSecondName}', '{$userEmail}')"); $result = $database->execQuery(); if ($result != true) { throw new Exception("User hasn't added to lawyers!"); } $result = $database->getQuery("SELECT * FROM lawyers WHERE user_id = {$userId}"); if (!$result) { throw new Exception("Cannot select lawyer from BD!"); } $lawyerId = $result[0]['id']; $avatar = file_get_contents(SITE_URL . "res/pictures/lawyer-placeholder.jpg"); file_put_contents(SITE_URL . "store/lawyers-info/photos/avatar_" . $lawyerId . ".jpg", $avatar); file_put_contents(SITE_URL . "store/lawyers-info/resumes/resume_" . $lawyerId . ".html", "Resume will be here"); $database->setQuery("UPDATE users SET role_id = 4 WHERE id = {$userId}"); $result = $database->execQuery(); if ($result != true) {
//Вставляем значение в итоговый массив и возвращаемся к началу цикла array_push($toSend, $result); } //Отправляем ответ ajax-скрипту в JSON формате. echo json_encode($toSend); //Разрываем соединение $database->disconnect(); } //Если пришел запрос на добавление новой страны. if (isset($_POST['addNewCountry'])) { $database->connect(); //Название страны берется из полученного POST-запроса от Ajax, и приводится к виду //имени собственного. Первая буква становится строчной, остальные прописными. $country = ucfirst(strtolower($_POST['country'])); //Передаем запрос классу. $database->setQuery("INSERT INTO countries (country) VALUES ('{$country}')"); //Исполняем запрос. В result окажется либо ошибка, либо true. $result = $database->execQuery(); //Если запрос выполнен, выводим имя введенной страны if ($result == true) { echo $country; } //Разрываем соединение с БД $database->disconnect(); } //см. выше. if (isset($_POST['addNewCity'])) { $countryId = $_POST['countryId']; $city = ucfirst($_POST['city']); $database->connect(); $database->setQuery("INSERT INTO cities (country_id, city) VALUES ({$countryId}, '{$city}')");