单击按钮后将值添加到不同的列
Posted
技术标签:
【中文标题】单击按钮后将值添加到不同的列【英文标题】:adding values to a different column after button click 【发布时间】:2018-09-05 12:42:58 【问题描述】:我有一个页面,用户可以在其中查看他们发送的票,他们也可以取消它,如下所示:
我想要发生的是当我点击“关闭:取消”按钮时。它也会在受让人列中显示“已关闭:已取消”。目前这是我点击按钮时才得到的:
这是我的表格:
<div class="container">
<div class="page-header">
<h3>My Tickets</h3>
<div class="table-responsive">
<table class="table">
<tr>
<th>Employee Name</th>
<th>Time</th>
<th>Priority</th>
<th>Assignee</th>
<th>Subject</th>
<th>Problem</th>
<th>Status</th>
<th></th>
</tr>
<?php
include ('database.php');
$result = $database->prepare ("SELECT tickets.* FROM tickets INNER JOIN employee ON employee.id = tickets.employee_id WHERE employee.username = '".$_SESSION["VALID_USER_ID"]."'");
$result ->execute();
for ($count=0; $row_message = $result ->fetch(); $count++)
?>
<tr>
<td><?php echo $row_message['firstname']." ".$row_message['lastname']; ?></td>
<td><?php echo $row_message['time']; ?></td>
<td><?php echo $row_message['priority']; ?></td>
<td><?php echo $row_message['assignee']; ?></td>
<td><?php echo $row_message['subject']; ?></td>
<td><?php echo $row_message['problem']; ?></td>
<?php if ($row_message['status']) : ?>
<td><?php echo $row_message['status']."".$row_message['assignee'];?></td>
<?php else : ?>
<td>
<form method="post" action="update-ticket-status-emp.php">
<input type="hidden" name="ticketno" value="<?php echo $row_message['ticketno']; ?>" />
<input type="submit" name="closedcan" value="Closed: Cancelled"></input>
</form>
</td>
<?php endif ; ?>
</tr>
<?php ?>
</table>
<a href="employee_panel.php"><button type="button" class="btn btn-primary"><i class="glyphicon glyphicon-arrow-left"></i> Back</button></a>
</div>
</div>
</div>
</div>
</div>
这是执行代码:
<?php
if(isset($_POST['closedcan']))
$msg = "ClosedCan";
$status = $_POST['closedcan'];
$assignee = $_POST['closedcan'];
$ticketno=$_POST['ticketno'];
$con = mysqli_connect('localhost', 'root', '');
mysqli_select_db($con, 'companydb');
$sql = "UPDATE tickets SET status = '$status' WHERE ticketno = '$ticketno'";
if(mysqli_query($con, $sql))
header("refresh:1; url=view-tickets-emp.php?msg=$msg");
else
var_dump(mysqli_error($con));
?>
PS:我知道 mysql 已被弃用,我最终会在弄清楚这一点后对其进行更改。
【问题讨论】:
仅供参考,可能有一个没有语法错误的UPDATE
实际上并不更新。您的代码没有意识到这一点。此外,您的 UPDATE 查询容易受到注入攻击。请使用占位符执行准备好的语句。您是否在一个文件上使用 pdo 而在另一个文件上使用 mysqli? mysqli_
未被弃用,mysql_
被弃用。请减少代码块中的制表符,除非脚本是“可运行的”,否则不要使用“可运行”的代码块。
【参考方案1】:
修改了exec代码中的查询:
$sql = "UPDATE tickets SET status = '$status', assignee = '$assignee' WHERE ticketno = '$ticketno'";
【讨论】:
以上是关于单击按钮后将值添加到不同的列的主要内容,如果未能解决你的问题,请参考以下文章
在 Woocommerce 中单击后将添加到购物车按钮更改为查看购物车按钮