INSERT INTO не ВСТАВЛЯЕТ никаких ДАННЫХ, несмотря на отсутствие ошибок в PHP, MYSQL

Я пытаюсь создать форму для добавления данных в базу данных SQL. Сначала он извлекает для меня данные, которые уже существуют в другой таблице, а затем я их добавляю в базу данных вместе с созданной мной формой. Но, несмотря на отсутствие ошибок, данные не вставляются, они возвращаются с 0 строками. Я пытался исправить это часами и не могу придумать ничего, что могло бы это исправить.

Вот мой код, который извлекает данные из существующей таблицы:

    <form action = "" method = "POST" class = "form-horizontal">
                                <fieldset>
                                    <legend>Action Taker:</legend>
<label class = "control-label col-lg-4">Employee Name: </label>
<input type = "text" name = "employ_first" value  = "<?php echo (isset($row['first_name'])&&!empty($row['first_name'])) ? $row['first_name'] : ''; ?>" disabled>
<input type = "text" name = "employ_second" value  = "<?php echo (isset($row['second_name'])&&!empty($row['second_name'])) ? $row['second_name'] : ''; ?>" disabled>
<label class = "control-label col-lg-4">Staff Comment: </label>
<input type = "text" name = "reason_emp" value  = "<?php echo (isset($row['reason'])&&!empty($row['reason'])) ? $row['reason'] : ''; ?>" size = "100" disabled>
 <div>
                                                    &nbsp;  &nbsp;  &nbsp;
                                            </div>
                                        <div>
                                            <label class = "control-label col-lg-4">Add Respond Comment:</label>
                                            <div class = "col-lg-4">
                                                <input type = "text" name = "admin_respond" class = "form-control" size = "50px"/>
                                            </div>
                                            <div>
                                                    &nbsp;  &nbsp;  &nbsp;
                                            </div>
                                        </div>
    <input type = "submit" name = "submit" class = "form-control"  value = "Add" />
    </form>

Вот код ФОРМЫ:

<form action = "meeting_schema.php" method = "POST" class = "form-horizontal">
<h3>Fill The Form For Investigation:</h3>
<div> 
<label>Type of Investigation:</label>
<input name = "type" type = "text">
<label>Set Date:</label>
<input name = "set_on_date" type = "date">
<label>Set Time:</label>
<input name = "set_on_time" type = "time">
<label>Assigned to:</label>
<input name = "assigned_to" type = "text">
<input type = "submit" name = "add_meeting" value = "Create Meeting" />
</div>
</form>

А вот и мой php-файл с действием meeting_schema:

<?php
 $hostnames = "localhost";
    $usernames = "u3253997...";
    $passwords = "Ws.....";
    $databaseNames = "u3253997...";
    $conns= mysqli_connect($hostnames, $usernames, $passwords, $databaseNames);
 if (!$conns) {

die('Connection failed: ' . mysqli_connect_error());

        }
if (!$conns) {

die("Connection failed: " . mysqli_connect_error());
}
if (isset($_POST['add_meeting'])){

$stmt = $conns->prepare("INSERT INTO `emp_inv` (`meeting.id`,`employ_first`,`employ_second`,`reason`,`type`,`set_on_date`, `set_on_time`, `set_by`, `assigned_to`) VALUES (NULL,?,?,?,?,?,?,?,?)");


if (!$stmt) {
        echo "There is an error in the source code, please contact support to fix the problem.";
    }
    else {

$stmt->bind_param('ssssssss', $_POST['employ_first'], $_POST['employ_second'], $_POST['reason_emp'], $_POST['type'], $_POST['set_on_date'], $_POST['set_on_time'], $_SESSION['set_by'], $_POST['assigned_to']);
$stmt->execute();

echo "Meeting has been created";
header("location:meetings.php");
} 
}   

?>

Вы не проверяете возвращаемое значение bind_param()илиexecute(). См. Как получить информацию об ошибках MySQLi в разных средах для более простого способа

Phil 14.01.2019 05:54
bind_param может вернуть НУЛЕВОЙ при ошибке, вы не проверяете это.
rsm 14.01.2019 05:58
"meeting.id" ? Я не рекомендую использовать точки в названиях столбцов. Это затруднит чтение вашего кода и, вероятно, в какой-то момент приведет вас к ошибкам.
Phil 14.01.2019 05:59

Неустранимая ошибка: Неперехваченный mysqli_sql_exception: столбец «Employ_first» не может быть пустым в /home/u325399794/domains/mcdempolog.hostingerapp.com/public_‌ html / admin / meeting_s‌ chema.php: 28 Трассировка стека: # 0 / home / u325399794 / domains / mcdempolog.hostingerapp.com / public_‌ html / admin / meeting_s‌ chema.php (28): mysqli_stmt-> execute () # 1 {main} добавлено в /home/u325399794/domains/mcdempolog.hostingerapp.com/public_‌ Html / admin / meeting_s‌ chema.php в строке 28 вот что сейчас отображается

XJL 14.01.2019 06:00

Вы отлаживали код, чтобы увидеть, поступают ли данные в $ _POST?

Navid 14.01.2019 06:09

Столбец - NOT NULL. Не вводите как ? NULL, просто оставьте пустую строку ? '' Если вы хотите оставить ее пустой ?

BadPiggie 14.01.2019 06:09

Вы говорите, что у вас нет ошибок, да. Вы их не проверяете, вот почему.

Funk Forty Niner 14.01.2019 07:29
Примечание: Дубликаты, которые использовались / использовались для закрытия вопроса, являются все, с которыми нужно проконсультироваться и попытаться отладить свой код. Это помогает избежать вероятных бесчисленных комментариев, требующих разъяснений / дополнительного кода, и, возможно, вы никогда не отвечаете на них или не ожидаете, что кто-то потратит время на создание чего-то для тестирования; это не их работа, как бы благородно это ни было. Если вы выполнили шаги "в письме" и все еще не знаете, как исправить свой код или как интерпретировать ошибки, вы можете обновить свое сообщение, указав, что это были за ошибки.
Funk Forty Niner 14.01.2019 07:30

Привет, извините за отсутствие ответа, я исправил это сейчас, как будто я знаю, что происходит. Я не ожидаю, что люди исправят это за меня, потому что я только начал с кода и хочу учиться самостоятельно. Спасибо ребята за помощь

XJL 14.01.2019 07:35
Стоит ли изучать PHP в 2026-2027 годах?
Стоит ли изучать PHP в 2026-2027 годах?
Привет всем, сегодня я хочу высказать свои соображения по поводу вопроса, который я уже много раз получал в своем сообществе: "Стоит ли изучать PHP в...
Symfony Station Communiqué - 7 июля 2023 г
Symfony Station Communiqué - 7 июля 2023 г
Это коммюнике первоначально появилось на Symfony Station .
Оживление вашего приложения Laravel: Понимание режима обслуживания
Оживление вашего приложения Laravel: Понимание режима обслуживания
Здравствуйте, разработчики! В сегодняшней статье мы рассмотрим важный аспект управления приложениями, который часто упускается из виду в суете...
Установка и настройка Nginx и PHP на Ubuntu-сервере
Установка и настройка Nginx и PHP на Ubuntu-сервере
В этот раз я сделаю руководство по установке и настройке nginx и php на Ubuntu OS.
Коллекции в Laravel более простым способом
Коллекции в Laravel более простым способом
Привет, читатели, сегодня мы узнаем о коллекциях. В Laravel коллекции - это способ манипулировать массивами и играть с массивами данных. Благодаря...
Как установить PHP на Mac
Как установить PHP на Mac
PHP - это популярный язык программирования, который используется для разработки веб-приложений. Если вы используете Mac и хотите разрабатывать...
0
10
61
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

Используйте код ниже ...

$stmt->bind_param('ssssssss',$employ_first,$employ_second, $reason_emp,$type,$set_on_date,$set_on_time,$set_by,$assigned_to);

$employ_first = $_POST['employ_first'];
$employ_second = $_POST['employ_second']; 
$reason_emp = $_POST['reason_emp'];
$type = $_POST['type']; 
$set_on_date = $_POST['set_on_date']; 
$set_on_time = $_POST['set_on_time']; 
$set_by = $_SESSION['set_by']; 
$assigned_to = $_POST['assigned_to'];
$stmt->execute();
echo "Meeting has been created";

$stmt->close();

Другие вопросы по теме

Этот код входа php всегда ничего не возвращает
Должен ли я использовать JSON или XML, если порядок свойств объекта, возвращаемого сервером, имеет значение?
Mysql пытается ранжировать строки по порядку
Вывод с группировкой и сортировкой mySql по
Cloud SQL: Python Client API по умолчанию использует набор символов utf8mb3 при импорте файла CSV
Laravel 5.7 + MySQL: несколько условий "где" в запросе. Индекс для каждого столбца "где" или один составной индекс, объединяющий все столбцы?
Вопрос для самообучения mysql, Как использовать 2 таблицы для создания 3-й таблицы, которая использует информацию из 2 исходных таблиц
Как исправить "Невозможно получить геометрический объект из данных, которые вы отправляете в поле GEOMETRY" при восстановлении резервной копии PHPMyAdmin?
MYSQL - вставить, если значение больше или меньше запаса
Как вычесть дату, а затем просуммировать результаты предыдущей операции