php表单未将数据插入数据库

xqkwcwgp  于 2021-06-25  发布在  Mysql
关注(0)|答案(0)|浏览(230)

我有一个php/html表单,用户可以将一个作业分配给一个驱动程序,当提交时:它将被添加到数据库中。
这个表单一直在运行,直到我添加了driver id字段(这是基于预先选择的驱动程序)
我还通过id绑定了url以表示所选的驱动程序:http://localhost/finalyear/add-job.php?driver_id=13
单击提交按钮前的代码:

if (!isset($_GET['driver_id']))
{
echo "You shouldn't have got to this page";
exit;
}

$drive = $_GET['driver_id'];
$query = "SELECT * FROM driver WHERE driver.driver_id = :driver"; 
$term = $conn->prepare($query);
$term->bindValue(':driver', $drive);
$term->execute();

$drive=$term->fetch(pdo::fetch\u obj);
html格式:

<select class="form-control" name="ID" > 
        <option value="<? echo $term['driver_id'];?>"><?php echo $drive->driver_id; ?></option>

        </select>

单击按钮后的代码:

try{
       $conn = new PDO(DB_DATA_SOURCE, DB_USERNAME, DB_PASSWORD);

}
catch (PDOException $exception) 
{
echo "Oh no, there was a problem" . $exception->getMessage();
}

//get the form data
$newDriver = $_POST['ID'];

$conn=getConn();
$successJob=insertJob($conn,$newDriver);
if ($successJob) {
$error = "The job has now been added to the site!";
include("add-job.php");
}
else {
    $error = "This failed";
}

function insertJob($conn,$newDriver)
 {
 $query="INSERT INTO jobs VALUES (NULL, :driver_id)";

$stmt=$conn->prepare($query);
$stmt->bindValue(':driver_id', $newDriver);
$affected_rows = $stmt->execute();

    if($affected_rows==1){
        return true;
    }else{

        return false;
    }

 }

$conn=NULL; //close the connection

}

所以现在添加驱动程序的id,页面是空白的,没有给出任何类型的错误,我不知道为什么会发生这种情况。做过各种测试等。
这一切都很好,直到我介绍了选项控制来保存驱动程序的id。还要注意,这也可能是由url绑定引起的,因为当您单击提交按钮时,它会带我到一个黑色页面,上面说“我不应该到那里”,url会删除我所做的驱动程序id绑定。

暂无答案!

目前还没有任何答案,快来回答吧!

相关问题