php - 使用 jQuery post 方法发送表单数据不起作用
问题描述
尝试通过 jQuery Ajax post 方法更新 SQL Server 中的删除标志。我不确定问题出在我的 PHP 还是 jQuery 代码上。当我按下删除按钮时,没有任何反应,但 Web 开发工具并没有表明语法有任何问题。
这是HTML:
<div class='dialog' id='editForm' title='Edit' >
<form method='POST' id ='editFo' name = 'editFo' action='post' enctype='multipart/form-data'>
</form>
</div>`
这是按钮的html:
<button id="deleteFormbtn" >Delete</button>
这是jQuery代码:
$("#deleteFormbtn").click(function(){
$.post ( "deleteRow.php", $("#editForm: input").serializeArray(), function(data){
alert(data);
});
});`
这是PHP代码:
`
require_once ('sql/connectionstring/connectionstring.php');
$conn = SQLServerConnection();
if(isset($_POST['vendor'])){
$loc_sql = "SELECT TOP 1 loc_id FROM <table> WHERE loc_name = ?";
$parms = array($_GET['loc']);
$loc = sqlsrv_query($conn, $loc_sql, $parms) or die (print_r ( sqlsrv_errors(), true));
while ($q = sqlsrv_fetch_array($loc)){
$loc_id = $q["loc_id"];
}
$username = $_POST['username'];
$password = $_POST['password'];
$comments = $_POST['comments'];
$vendor_website = $_POST['website'];
$vendor = $_POST['vendor'];
$query = "UPDATE <table> SET <column> = '0' WHERE <column> = ?";
$parms = $username;
$result = sqlsrv_query($conn, $query, $parms) or die (print_r ( sqlsrv_errors(), true));
sqlsrv_close($conn);
}
header('Location: <location>);
?>`
解决方案
- 您需要通过 AJAX 发布请求传递“供应商”,以便 PHP 在尝试访问时可以识别它
$_POST['vendor']
- 您还需要在“
if(isset($_POST...) { .... }
”未完成时进行处理,以便返回错误。 更多地关注 PHP 部分,以 JSON 格式向您发送回复。类似于:
$data = /** 无论你在序列化 **/;
header('Content-Type: application/json');
回声 json_encode($data);
推荐阅读
- python - 子进程监听同一个端口
- wordpress - 如何简单地将片段代码添加到博客文章中(在 wordpress.com、免费计划、经典编辑器上)
- python - 集群重启后重新连接到 ray 集群
- sql - SQL将3个值向下移动相同的值
- python - Python:如何独立调整窗口大小和缓冲区大小?
- pivot-table - 如何在雪花中转置表格?我已经使用了 pivot 和 partition by 但仍然没有得到预期的输出
- html - 通过使菜单项刷新来改进 Bootstrap 平行四边形导航栏菜单
- c# - 在 AuthenticationParameters 和 AcquireToken 上出现错误
- python - contextvars:获取和设置原子
- python - Speed up Boto3 file transfer across buckets