lrik64
@lrik64
Начинающий программист

Как сделать запись в input из базы данных предыдущие данные по счёту?

Здравствуйте,у меня возникла следующая проблема,есть страница для передачи показаний по счётчику которые записываются в базу данных,и нужно сделать что бы при выборе например лицевого счёта 1111111111 выводилось его последние показание по той или иной услуге(в качестве напоминания),у меня уже есть проверка на ввод меньшего показания, но как в тот код что у меня есть внести ещё то о чём я написал выше я не знаю помогите пожалуйста .
Вот сами скрипты:
HTML:
<html>
<head>
</head>
<body> 
<h1 align = "middle">Передайте показания</h1>
<p>Используя данную форму, Вы можете отправить нам текущие показания своих счетчиков.</p>
<form action="bd.php" method="POST" >
<p>ФИО отправителя (обязательно)<br/>
<input type="text" pattern="[А-Яа-яЁё\s]+$" name="your_name" required oninvalid="this.setCustomValidity('Введите свою фамилию,имя и отчество')" oninput="setCustomValidity('')" placeholder="Обязательное поле" value="" size="40"/></p> <!-- любое слово на русском с пробелами -->
<p>Контактный телефон (обязательно)<br/>
<input type="tel"  name="contactnumber" required oninvalid="this.setCustomValidity('Введите номер телефона')" oninput="setCustomValidity('')" placeholder="Обязательное поле" value="" size="40"  aria-required="true"/> </p>
<p>Номер квартиры (обязательно)<br/>
<input type="number" pattern="[0-9]{3}" name="apartment" required oninvalid="this.setCustomValidity('Введите номер своей квартиры')" oninput="setCustomValidity('')" placeholder="Обязательное поле" value="1" size="40" /> </p>
<p>Холодная вода<br/>
<input type="text" pattern="[0-9]{6}" name="coldwater"  value="0"  size="40"/> </p>
<p>Горячая вода<br />
<input type="text" pattern="[0-9]{6}" name="hotwater"  value="0" size="40" maxlength="6"/> </p>
<p>Электричество<br/>
<input type="text" pattern="[0-9]{6}" name="electricity"  value="0" size="40" maxlength="6"/> </p>
<p>Газ<br />
<input type="text" pattern="[0-9]{6}" name="gas"  value="0" size="40" maxlength="6"/> </p>
<p>Отопление<br/>
<input type="text" pattern="[0-9]{6}" name="heating"  value="0" size="40" maxlength="6"/> </p>
<p><input type="checkbox" id="qwe" name="option1" value="a1" required > &nbsp;&nbsp;Пожалуйста поставьте галочку чтобы мы удостоверились что вы не робот.</p>
<p><input type="submit" value="Отправить"/></p>
<p><input type="reset" value="Очистить поля"/></p>
</form>

PHP:
<?php 
echo "<link rel='stylesheet'  href='\Ignatjev\style.css'>";
if (isset($_POST['your_name']) && isset($_POST['contactnumber'])&& isset($_POST['apartment']))
{
// Переменные с формы
$your_name = $_POST['your_name'] ;
$contactnumber = $_POST['contactnumber'];
$apartment = $_POST['apartment'];
$coldwater = $_POST['coldwater'];
$hotwater = $_POST['hotwater'];
$electricity = $_POST['electricity'];
$gas = $_POST['gas'];
$heating = $_POST['heating'];
// Параметры для подключения
$db_host = "localhost"; 
$db_user = "root"; // Логин БД
$db_password = "masterkey"; // Пароль БД
$db_base = 'mydatabase'; // Имя БД
$db_table = "mytable"; // Имя Таблицы БД
// Подключение к базе данных
$mysqli = new mysqli($db_host,$db_user,$db_password,$db_base);
$mysqli->set_charset("utf8");
// Если есть ошибка соединения, выводим её и убиваем подключение
if ($mysqli->connect_error) 
{
    die('Ошибка : ('. $mysqli->connect_errno .') '. $mysqli->connect_error);
}
//проверка на предыдущее показание
$sql = "SELECT * FROM ".$db_table." WHERE `apartment` = '$apartment' LIMIT 1";
$result = $mysqli->query($sql);
$row = $result->fetch_assoc();
if ($row["coldwater"] > $coldwater)
{
echo"Cледующее показание по холодной воде не может быть меньше предыдущего <br> ";
echo '<a href="http://localhost/Ignatjev/Index.php"><button>Главная страница</button></a> <br>';
echo "<html><head><meta http-equiv='Refresh' content='10; URL=index.php'></head><body></body></html>";
exit();
}
if ($row["hotwater"] > $hotwater) 
{
	echo "Cледующее показание по горячей воде не может быть меньше предыдущего <br>";
	echo '<a href="http://localhost/Ignatjev/Index.php"><button>Главная страница</button></a> <br>';
	echo "<html><head><meta http-equiv='Refresh' content='10; URL=index.php'></head><body></body></html>";
	exit();
}
if ($row["electricity"] > $electricity)
{	
echo "Cледующее показание по электричеству не может быть меньше предыдущего <br>";
echo '<a href="http://localhost/Ignatjev/Index.php"><button>Главная страница</button></a> <br>';
echo "<html><head><meta http-equiv='Refresh' content='10; URL=index.php'></head><body></body></html>";
exit();
}
if ($row["gas"] > $gas)
{
echo "Cледующее показание по газу не может быть меньше предыдущего <br>";
echo '<a href="http://localhost/Ignatjev/Index.php"><button>Главная страница</button></a> <br>';
echo "<html><head><meta http-equiv='Refresh' content='10; URL=index.php'></head><body></body></html>";
exit();
}
if ($row["heating"] > $heating)
{	
echo "Cледующее показание по отоплению не может быть меньше предыдущего <br>";
echo '<a href="http://localhost/Ignatjev/Index.php"><button>Главная страница</button></a> <br>';
echo "<html><head><meta http-equiv='Refresh' content='10; URL=index.php'></head><body></body></html>";
exit();
}
//Добавление
$sql = "INSERT INTO ".$db_table."
 (fullname,contactnumber,apartment,coldwater,hotwater,electricity,gas,heating)
 VALUES ('$your_name','$contactnumber','$apartment','$coldwater','$hotwater','$electricity','$gas','$heating')";
 echo '$sql = '.$sql;
$result = $mysqli->query($sql);
 
if ($result == true)
{
	echo "Информация занесена в базу данных";
    echo "<html><head><meta http-equiv='Refresh' content='0; URL=index.php'></head><body></body></html>";
}
else
{
	 die('Ошибка : ('. $mysqli->connect_errno .') '. $mysqli->connect_error);
	 echo "Информация не занесена в базу данных" ;
}
}
?>

MySQL:
drop database if exists mydatabase;
create database mydatabase;
use mydatabase;
CREATE TABLE mytable (
  ID INT NOT NULL PRIMARY KEY AUTO_INCREMENT,
  fullname varchar(255) CHARACTER SET utf32 NOT NULL,
  contactnumber BIGINT(20) NOT NULL,
  apartment INT,
  coldwater INT,
  hotwater INT,
  electricity INT,
  gas INT,
  heating INT 
);
CREATE TABLE svyaz (
  ID INT NOT NULL PRIMARY KEY AUTO_INCREMENT,
  firstname varchar(255) CHARACTER SET utf32 NOT NULL,
  email varchar(255) NOT NULL,
  message mediumtext character set utf8
);
  • Вопрос задан
  • 649 просмотров
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы