php - 基于HTML表单输入在sql中移动记录
问题描述
我正在尝试根据表单的输入将记录移动到数据库中,但似乎遇到了问题。我已经尝试了以下方法,但它没有在数据库上执行命令。它需要读入决策值并根据决策执行查询。有人可以在这里发现问题吗?我已经在 SQL Server 中运行了查询,它可以工作。
HTML表单代码:
<!--Other Form-->
<center>
<div class="container">
<form action="dLG.php" onsubmit="return confirm('Are you sure you wish to delete ?');">
<div class="row">
<div class="col-25">
<label for="License Group ID">Enter the License Group ID that you wish to delete</label>
</div>
<div class="col-75">
<input type="number" name="LicenseGroupID" placeholder="LicenseGroupID">
</div>
</div>
<br>
<div class="row">
<input type="submit" value="Delete License Group">
</div>
</form>
</div>
</center>
php:
<html>
<?php
$serverName = "x";
$options = array( "UID" => "x", "PWD" => "x", "Database" => "x");
$conn = sqlsrv_connect($serverName, $options);
if( $conn === false )
{
echo "Could not connect.\n";
die( print_r( sqlsrv_errors(), true));
}
$License_Group_ID = $_POST['LicenseGroupID'];
$query = "DELETE FROM dbo.tbl_license_group
OUTPUT
deleted.License_Group_ID,
deleted.Vendor_Name,
deleted.License_Version,
deleted.Edition,
deleted.Operating_System,
deleted.Quantity
INTO dbo.tbl_license_group_delete(License_Group_ID, Vendor_Name, License_Version,Edition,Quantity)
WHERE License_Group_ID = '$License_Group_ID'; " ;
$params1 = array($License_Group_ID);
$result = sqlsrv_query($conn,$query,$params1);
sqlsrv_close($conn);
?>
</html>
解决方案
默认表单方法是 GET,而不是 POST。如果你想使用 POST(在这种情况下你应该),使用:
<form action=".." method="post" onsubmit="...">
...
</form>
第二个问题是 $query 字符串。它应该使用如下参数:
$query = "DELETE ... WHERE License_Group_ID = ?; " ;
PS:使用 PDO 比使用 sqlsrv_* 函数更好。
推荐阅读
- angular - 从 Angular 7 升级到 Angular 9 失败
- python - 是否可以通过 keras 图更改 batch_size 中途?
- javascript - AbortController 和 fetch:如何区分网络错误和中止错误
- javascript - How do I navigate in react native
- tensorflow - CPU 代替 GPU 用于大批量,但 GPU 仅用于 Keras GPU 和 Tensorflow 后端中的小批量
- python - OpenCV:对圆数组进行排序
- javascript - Magnific popup html页面滚动顶部问题
- typescript - 为什么允许这样做?常量 nums: number[] = { ...[1, 2, 3] }
- r - 有没有办法使用 gt 包按行(如迷你图)动态嵌入 ggplot 图像?
- javascript - 登录反应js后创建用户特定的重定向?