PHP - SQL - 更新数据的按钮点击

,这一问题被创建为我刚才的问题中包含的,而不是缩小它下降到1PHP - SQL - 更新数据的按钮点击

目的

2问题当用户选择三个变量来访问一个数据,用户将能够点击一个按钮来改变数据的一个细节。

SQL - 数据库表(SchoolData)

+-----+--------+------------+------------+----------------+-----------+ 

| ID | Class | Teacher | YearMonth | Description | Status |

+-----+--------+------------+------------+----------------+-----------+

| 1 | Alpha | Sara | 2017/01 | Good & Clean | Pending |

+-----+--------+------------+------------+----------------+-----------+

| 2 | Alpha | Sara | 2017/01 | Has 30 Chairs | Pending |

+-----+--------+------------+------------+----------------+-----------+

| 3 | Alpha | Sara | 2017/01 | Has 30 Tables | Pending |

+-----+--------+------------+------------+----------------+-----------+

| 4 | Alpha | Sara | 2017/01 | 5 Subjects | Pending |

+-----+--------+------------+------------+----------------+-----------+

| 5 | Beta | John | 2016/11 | Big & Clean | Official |

+-----+--------+------------+------------+----------------+-----------+

| 6 | Beta | John | 2016/11 | New Student | Official |

+-----+--------+------------+------------+----------------+-----------+

| 7 | Beta | John | 2016/11 | Injured Student| Official |

+-----+--------+------------+------------+----------------+-----------+

| 8 | Beta | John | 2016/11 | 6 Subjects | Official |

+-----+--------+------------+------------+----------------+-----------+


页面

+---------------------------------------------------------------+ 

| |

| |>Select Class<| |>Select Teacher<| |>Select Year/Month<| |

| |

| (Search) |

| |

| |

|>>>>>>>>>>>>>>>>>>>>>>>>>>INPUT<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<|

| |

| {Class} {Teacher} {Description} |

| |

| |

| (Update) |

| |

+---------------------------------------------------------------+

  • 传奇

    下拉列表 - |> < |

    按钮 - ()

    文本输入 - {}


页面描述

的更新 butto n会将所选数据的“状态”更改为“待处理”。所以,如果让我们说用户搜索| Beta |约翰| 2016/11 |并点击更新按钮,该数据的“状态”将从“官方”更改为“待定”

但是,如果员工搜索“状态”已经是“待定”的数据,例如,| Alpha |萨拉| 2017/01 |,更新按钮将被禁用。


HTML表格

<!--Those data are setting for checking data existance in the database --> 

<input type="hidden" name="class" value=" <?php echo $class; ?>" >

<input type="hidden" name="date" value=" <?php echo $getDate; ?>">

<input type="hidden" name="teacher" value=" <?php echo $teacher; ?>" >

<input type="hidden" id="inputStatus" name="status" value="">


更新按钮(HTML)

<td colspan="1" valign="bottom" align="left"> 

<button type="button" class="btn btn-lg update" id="btnUpdate" name="update"> Enable Re-Submit </button>

</td>


更新按钮功能(JavaScript的)

$(function(){ 

$("button#btnUpdate").on('click', function (e){

e.preventDefault();

$("#inputStatus").val("update");

$.ajax({

type: 'post',

url: 'changeClassStatus.php'

});

}

}


changeClassStatus。PHP(PHP)

<?php 

$class = trim($_POST['calss']);

$teacher = trim($_POST['teacher']);

$date = $_POST['date'];

$date = $date."/01";

$status = $_POST['status'];

$empId = $_POST['empId'];

if($status == 'update'])){

$sqlUpdate = mysqli_query($conn,"UPDATE SchoolData SET Status='Pending' WHERE (Class=$class AND Teacher=$teacher AND ID='".$id[$i]."' AND YEAR(MonthYear)= YEAR('$date') AND MONTH(MonthYear)= MONTH('$date'));";

$sqlExecute=$conn->query($sqlUpdate)or exit("Error code ({$conn->errno}): {$conn->error}");

echo "Data Status Changed";

}

?>

问题描述

我已经实现了代码,但他们没有更新的搜索数据的状态。当我点击更新按钮,没有更新的数据,并没有任何反应(没有变化,并没有回应消息)

其他注意事项

这个问题是与PHP - SQL - Disable, Hide or Enable Button based on Data。如果我的问题有任何缺乏或不准确的信息或问题,请告诉我。谢谢

回答:

在你的If语句让我们开始,但试图看看你的所有变量是否正确地传递到你的查询中,你可以通过编写来完成。

echo $class; 

echo $teacher;

etc ....

在你的查询之前,你的if语句。我注意到$class = trim($_POST['calss']);它应该是'class'吗?或者说?

回答:

让我与你的代码说明你iitself

$("button#btnUpdate").on('click', function (e){ 

e.preventDefault();

$("#inputStatus").val("update");

$.ajax({

type: 'post',

url: 'changeClassStatus.php'

});

}

在服务器端,PHP从AJAX POST请求

$class = trim($_POST['calss']); 

$teacher = trim($_POST['teacher']);

$date = $_POST['date'];

$date = $date."/01";

$status = $_POST['status'];

$empId = $_POST['empId'];

所以,你的Ajax请求,应在以下rewrtitten期待下面的变量给定语法。

上述ajax请求不包含任何后期参数。你应该添加数据属性。看到下面的例子

$.ajax({ 

url: 'url',

type: 'GET',

data: { field1: "hello", field2 : "hello2"} ,

contentType: 'application/json;

charset=utf-8'

});

希望这会有所帮助。由于

回答:

在jQuery的Ajax调用,通过场变量data财产JSON格式为你的PHP脚本获得使用$ _ POST字段变量值,使用type作为后。

$.ajax({ 

url: 'changeClassStatus.php',

type: 'POST',

data: { calss: "hello", teacher : "hello2", date : "01/01/2017", status: "Active", empId : 12 },

contentType: 'application/json; charset=UTF-8',

success: function (response) {

console.log(response.status);

},

error: function() {

alert("error");

}

});

在这里,如果在Ajax调用data属性传递你的PHP脚本将得到的值。在if条件中,检查空变量并仅在值不为空时更新。

<?php 

$class = trim($_POST['calss']);

$teacher = trim($_POST['teacher']);

$date = $_POST['date'];

$date = $date."/01";

$status = $_POST['status'];

$empId = $_POST['empId'];

if((!empty($status) && $status == 'update') && !empty($class) && !empty($teacher) && !empty($date) && !empty($empId)){

$sqlUpdate = mysqli_query($conn,"UPDATE SchoolData SET Status='Pending' WHERE (Class=$class AND Teacher=$teacher AND ID='".$id[$i]."' AND YEAR(MonthYear)= YEAR('$date') AND MONTH(MonthYear)= MONTH('$date'));";

$sqlExecute=$conn->query($sqlUpdate)or exit("Error code ({$conn->errno}): {$conn->error}");

echo "Data Status Changed";

}

?>

以上是 PHP - SQL - 更新数据的按钮点击 的全部内容, 来源链接: utcz.com/qa/260762.html

回到顶部