добавление записи в БД из формы

100
07 июня 2019, 08:30

есть таблица "prosto", в ней есть поля "b", "cart", "data", из формы по кнопке должны отправляться данные в эту таблицу, если дата добавляется, то для остальных полей появляется ошибка Undefined index: b, cart. Поля "b" и "cart" сделаны как select и берутся из таблиц "buro" и "cartr" соответственно.

main.php:

<html>
<body> 
<h4>Добавить картридж</h4>
<form>
  <div class="form-group">
        <label for="select1">№ бюро</label>
        <?php   
      $sql2 = "SELECT `b` FROM `buro`";
   $result2 = $conn->query($sql2); 
   echo '<select class="form-control" name="b" value="b">';
while ($myrow1 = mysqli_fetch_array ($result2))
{
                echo '<option value="'.$myrow1['b'].'">'.$myrow1['b'].'</option>';
                }
    echo "</select >";
    ?>
  </div>
  <div class="form-group">
    <label for="select2">Картридж</label>
    <?php
    $sql0 = "SELECT `cart` FROM `cartr`";
   $result1 = $conn->query($sql0); 
   echo '<select id="cart" class="form-control" name="cart" value="cart">';
while ($myrow = mysqli_fetch_array ($result1))
{
                echo '<option value="'.$myrow['cart'].'">'.$myrow['cart'].'</option>';
                }
    echo '</select>';
?>
  </div>
   <div class="form-group">
  <label for="data">Дата</label> 
    <input type='text' class="form-control" id='datetimepicker2' name="data" required /> 
    </div>
  <script type="text/javascript">
      $(function () {
      $('#datetimepicker2').datetimepicker({
        locale: 'ru',
        //format: 'YYYY-MM-DD'
      });
    });
  </script>
</form>
<a href=dob.php><input name="dob" type="button" class="btn btn-warning" value="Сохранить"></a>
</div>
</body>
</html>

dob.php:

<?php 
   $hostname = 'localhost';
   $username = 'root';
   $passwordname = '';
   $basename = 'test';
   $conn = new mysqli($hostname, $username, $passwordname, $basename) or die ('Невозможно открыть базу');
$b=$_POST['b'];
$cart=$_POST['cart'];
//$data = date("Y-m-d");
$sql1= "INSERT INTO `prosto` SET `data`=NOW()";
$sql2= "INSERT INTO `prosto` VALUES ('$b','$cart')";
$res1=$conn->query($sql1); 
$res2=$conn->query($sql2); 
?>
Answer 1

Для формы необходимо указывать метод и экшн, тогда форма будет отправлять данные по нужному методу и в нужное место:

<form method="POST" action="dob.php">...</form>

И здесь укажите так (без ссылки), чтобы форма отправилась по экшену:

<input name="dob" type="submit" class="btn btn-warning" value="Сохранить">
READ ALSO
Получить значение в JSON от процедуры на PL\SQL (БД Oracle) и распарсить его на PHP

Получить значение в JSON от процедуры на PL\SQL (БД Oracle) и распарсить его на PHP

Есть процедура procedure some_procedure(id in integer, data_json out varchar2) , которая берет некоторый параметр и возвращает значения в строке формата JSONя пытаюсь получить...

149
Ошибка PHP Warning: Invalid argument supplied for foreach()

Ошибка PHP Warning: Invalid argument supplied for foreach()

Был скрипт парсер, подгружал посты со стороннего сайтаВсе работало пока не перехал на другой хостинг

128
Uncaught SyntaxError: Unexpected token &lt; на WordPress

Uncaught SyntaxError: Unexpected token < на WordPress

Был уже готовый сайт на WordPress с конструктором страниц и несколькими плагинамиНемножко изменил у себя на локальном сервере, залил на хостинг...

137
Клонирование объекта в PHP

Клонирование объекта в PHP

Допустим есть класс Alpha и класс BettaОбъект $b класса Betta содержит переменную $a класса Alpha

140