无法从表单中插入数据到MySQL;使用PHP

时间:2018-05-31 17:36:38

标签: php html mysql wamp

我无法弄清楚为什么表单无法将数据提交到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 in 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 :(得分:-2)

尝试使用mysqli_error($ connection_Var)打印错误消息; http://php.net/manual/en/mysqli.error.php

根据我的经验,通常表格不存在,语法错误,或者用户没有适当的权限。我还建议你使用PHP PDO进行数据库连接,它更健壮,MySQLi有点陈旧。 http://php.net/manual/en/book.pdo.php