Здравствуйте. Подскажите, пожалуйста, как можно сделать так, чтобы при нажатии на кнопку "Отправить" на страничке oform, правильно срабатывал файл action_oform, т.е, проверял для пользователя существование значения в столбце "status" и, если оно не существует или "Отклонена", создавал значение в столбце "date"(ставил текущую дату), оставляя статус пустым, а если значение "Принята", то выводил сообщение "Заявка уже была создана и принята".
Я понимаю, что в общих чертах в файле action_oform должно быть:
- Подключение к базе данных(есть).
- Проверка на то, авторизован ли пользователь(есть).
- Получение данных из таблицы statem(есть).
- Работа с данными таблицы(нет).
Вот, что у меня есть:
Файл connection.php:
PHP код:
<?php
$host = 'localhost'; // адрес сервера
$database = 'insurance'; // имя базы данных
$user = 'root'; // имя пользователя
$dbpassword = ''; // пароль
?>
Файл oform.php:
PHP код:
<?php
require_once 'connection/connection.php';
if(empty($_SESSION['id'])) {
header("Location: http://passport/auth.php");
} else {
$id = $_SESSION['id'];
$conn = mysqli_connect($host, $user, $dbpassword, $database);
if (!$conn) {
die("Connection failed: " . mysqli_connect_error());
}
$sql = "SELECT * FROM client WHERE id='$id'";
$result = mysqli_query($conn, $sql);
$myrow = mysqli_fetch_array($result, MYSQLI_ASSOC);
$sql = "SELECT DISTINCT District FROM localitycoef";
$districts = mysqli_query($conn, $sql);
}
?>
<div class="container">
<script type="text/javascript" src="js\form-disable.js"></script>
<script type="text/javascript" src="js\price.js"></script>
<form enctype="multipart/form-data" id="ajax_form" method="post" action="action_oform.php">
<div class="form-block">
<h3>Получатель паспорта</h3>
<small>Данные можно изменить в личном кабинете</small>
<ul class="input-inline">
<li><label for="surname">Фамилия:</label>
<input class="form-input" name="surname" type="text" value=<?php echo $myrow['Surname'];?> disabled></li>
<li><label for="name">Имя:</label>
<input class="form-input" name="name" type="text" value=<?php echo $myrow['Name'];?> disabled></li>
<li><label for="patr">Отчество:</label>
<input class="form-input" name="patr" type="text" value=<?php echo $myrow['Patronymic'];?> disabled></li>
</ul>
<ul class="input-inline">
<li><label for="date">Дата рождения:</label>
<input class="form-input" name="date" type="date" value=<?php echo $myrow['BirthDate'];?> disabled></li>
<li><label for="passport">Номер свидетельства о рождении:</label>
<input class="form-input" name="passport" type="text" value=<?php echo $myrow['Passport'];?> disabled></li>
</ul>
<h4>Адрес постоянной регистрации:</h4>
<ul class="input-inline">
<li><label for="town">Регион:</label>
<input class="form-input" name="region" type="text" value="<?php echo $myrow['Region'];?>" disabled></li>
<li><label for="town">Город:</label>
<input class="form-input" name="town" type="text" value=<?php echo $myrow['Town'];?> disabled></li>
<li><label for="street">Улица:</label>
<input class="form-input" name="street" type="text" value=<?php echo $myrow['Street'];?> disabled></li>
</ul>
<ul class="input-inline">
<li><label for="house">Номер дома:</label>
<input class="form-input" name="house" type="text" value=<?php echo $myrow['HouseNumber'];?> disabled></li>
<li><label for="corpus">Корпус:</label>
<input class="form-input" name="corpus" type="text" value=<?php echo $myrow['Corpus'];?> disabled></li>
<li><label for="apartm">Квартира:</label>
<input class="form-input" name="apartm" type="text" value=<?php echo $myrow['Apartm'];?> disabled></li>
</div>
<ul class="input-inline">
<li>
<input class="price-left-btn" id="payment_btn" type="submit" name="payment_btn" value="Отправить">
</li></ul>
</form>
</div>
Файл action_oform.php с моей попыткой вывести хоть что-нибудь:
PHP код:
<?php
require_once 'connection/connection.php';
if(empty($_SESSION['id'])) {
header("Location: http://passport/auth.php");
}
$id = $_SESSION['id'];
$conn = mysqli_connect($host, $user, $dbpassword, $database);
if (!$conn) {
die("Connection failed: " . mysqli_connect_error());
}
$sql_state = "SELECT * FROM statem WHERE id_state='$id_state'";
$result_state = mysqli_query($conn, $sql_state);
$myrow_state = mysqli_fetch_array($result_state, MYSQLI_ASSOC);
if ($myrow_state['status'] == 'Принята') {
echo "123";
}
}
?>
И запросы для таблиц: client
Код:
CREATE TABLE `client` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`Email` varchar(50) NOT NULL,
`Password` varchar(255) NOT NULL,
`Surname` varchar(35) NOT NULL,
`Name` varchar(20) NOT NULL,
`Patronymic` varchar(22) DEFAULT NULL,
`Phone` varchar(11) NOT NULL,
`BirthDate` date NOT NULL,
`Passport` text NOT NULL,
`Region` varchar(35) NOT NULL,
`Town` varchar(70) NOT NULL,
`Street` varchar(115) NOT NULL,
`HouseNumber` int(11) NOT NULL,
`Corpus` int(11) DEFAULT NULL,
`Apartm` int(11) NOT NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=7 DEFAULT CHARSET=utf8
и statem:
Код:
CREATE TABLE `statem` (
`id_state` int(11) NOT NULL AUTO_INCREMENT,
`id` int(11) NOT NULL,
`status` varchar(10) DEFAULT NULL,
`date` date DEFAULT NULL,
PRIMARY KEY (`id_state`),
KEY `id` (`id`),
CONSTRAINT `statem_ibfk_1` FOREIGN KEY (`id`) REFERENCES `client` (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=3 DEFAULT CHARSET=utf8