Почему не выполняется INSERT INTO запрос в SQLite на php?

Написал страницу с формой ввода, по нажатию на кнопку ничего не происходит. Что я делаю не так ?
<?php
     
if ($_POST)
{
     $db = sqlite_open("mybase1.db");       
     $today = date('Y-m-d');
           
     $namePr = $_POST["nameProject"];
     $commentPr = $_POST["comment"];
     // поля в базе :  name, comment - TEXT; autor - INTEGER;   dtb - DATE
     $query_insert = sqlite_query($db, "INSERT INTO projects (name, comment, autor, dtb) 
     VALUES ('".$namePr."', '".$commentPr."', ".$iduser.", '".$today."')");
           
     if (!$query_insert) {echo "всё плохо";}
     else
     {
          header("Location:index.php");
     }
     
}
     
?>
    <Html>
    <BODY>
    <form role="form">
      <div class="form-group">
     
        <label>Название  <small class="text-danger">*</small></label>
        <input class="form-control" name="nameProject">
      </div>
     
      <div class="form-group">
        <label>Описание</label>
        <textarea class="form-control"  rows="3" name="comment" > </textarea>
      </div>
      <div class="text-danger"></div>
      <button type="submit" class="btn btn-primary">Создать</button>
     
    </form>
     
     
    <script src="js/jquery.js"></script>
    </BODY>
    </HTML>
  • Вопрос задан
  • 3126 просмотров
Решения вопроса 1
Anonym
@Anonym
Программирую немного )
По поводу ошибки с date:
Найдите в php.ini строку с date.timezone, раскомментируйте её и впишите нужную таймзону. Список можно посмотреть тут
После этого перезапустите веб-сервер.
Ответ написан
Пригласить эксперта
Ответы на вопрос 4
kengos
@kengos
Укажите method="post" в форме, а то она по умолчанию гетом отправляет
Ответ написан
Anonym
@Anonym
Программирую немного )
1. Используйте DBAL, хотя бы PDO.
2. <button type="submit"> не сабмитит форму. Используйте <input type="submit">
3. Зачем там jQuery?
Ответ написан
Immortal_pony
@Immortal_pony Куратор тега PHP
$iduser нигде не объявлена, но ее значение вы пытаетесь вставить в базу.
Ответ написан
Комментировать
Immortal_pony
@Immortal_pony Куратор тега PHP
VALUES ('".$namePr."', '".$commentPr."', ".$iduser.", '".$today."')");


В этой строке точки после названия переменных буду считаться частью имени переменной.
Можно переписать так:

VALUES ('" . $namePr . "', '" . $commentPr . "', " . $iduser . ", '" . $today . "')");


Или так (в двойных кавычках значения перемнных тоже подставляются, да, их не обязательно закрывать/открывать):

VALUES ('$namePr', '$commentPr', $iduser, '$today')");
Ответ написан
Ваш ответ на вопрос

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

Похожие вопросы