Не могу вставить данные из формы в MySQL;с PHP - PullRequest
0 голосов
/ 31 мая 2018

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

Это функция вставки (находится в info_file.php):

function insert_records($employee_id_fk,$license_num, $expiry_date, 
                        $aquired_date, $penalty_point)
{
   global $connection_Var;
   mysqli_query($connection_Var,
        "INSERT INTO bus_driver  
                (`employee_id_fk`,`license_num`,`expiry_date`,
                 `aquired_date`,`penalty_point`)
        VALUES ('".$employee_id_fk."', '".$license_num."','".
                $expiry_date."','".$aquired_date."','".$penalty_point."')");
}

Это код, который будет выполняться формой (lcoated в new_instance.php):

<?php 
    include 'info_file.php';
    Open_Connection(); 
    insert_records($_POST["employee_id_fk"],$_POST["license_num"],
                    $_POST["expiry_date"],$_POST["aquired_date"],
                    $_POST["penalty_point"]);
    header( 'Location:view.php');
    Close_Connection();
?>

Это форма:

<form action="new_instance.php" method="post">
             <p>Employee ID: <input type="text" name="employee_id_fk"></p>
            <p>License Number: <input type="text" name="license_num"></p>
            <p>Expiry date: <input type="text" name="expiry_date"></p>
            <p>Aquired data: <input type="text" name="aquired_date"></p>
            <p>Penalty point: <input type="text" name="penalty_point"></p>
            <input type="submit" value="Submit" />
           </form>

При первом использовании переполнения стека, так что извините, если есть ошибки в форматировании.Кроме того, я не знаю, есть ли способ прикрепить файлы (я полагаю, что это не в целях безопасности), так как это проект с несколькими файлами, мне пришлось взять только тот код, который, как мне кажется, является проблемой.

1 Ответ

0 голосов
/ 31 мая 2018

Попробуйте напечатать сообщение об ошибке с помощью mysqli_error ($ connection_Var);http://php.net/manual/en/mysqli.error.php

По моему опыту, обычно таблицы не существует, синтаксис неверен или у пользователя нет соответствующих разрешений.Я бы также рекомендовал использовать PHP PDO для соединений с базами данных, он более надежен, а MySQLi немного архаичен.http://php.net/manual/en/book.pdo.php

...