3

我有一个选择查询,它从表中提取数据并相应地显示它

$display_query= "select * from customer WHERE abc_mailing_list = '$abc' AND def_mailing_list ='$def' AND ghi_mailing_list = '$ghi' AND position_category IN($var) AND country_code='$country_cat' ORDER BY state";

$display_result=mysqli_query($dbc2,$display_query); 

<table width = "100%"border="1" style="border-collapse: collapse;">
<tr style="background-color: #51626F; color: #FFFFFF;">
<th> S.No</th>
<th> First Name</th>
<th>Last Name</th>
<th>Position Category</th>
<th>State</th>
<th>Country</th>
<th>Title</th>
<th>Agency</th>
<th>Department</th>

</tr>
<?php
$colour2 = "transparent";  
$colour1 = "#B1B0A7";  
$count = 0;
$row_count = 0; 
while($row=mysqli_fetch_assoc($display_result)){

$rowcolor = ($row_count % 2) ? $colour1 : $colour2;
$count++;
?>
<tr style="background: <? echo $rowcolor; ?>;">
<td width="10%" height="20"><? echo $count; ?></td>
<td width="10%" height="20"><? echo $row['first_name']; ?></td>
<td width="10%" height="20"><? echo $row['last_name']; ?></td>
<td width="10%" height="20"><? echo $row['position_category']; ?></td>
<td width="10%" height="20"><? echo $row['state']; ?></td>
<td width="10%" height="20"><? echo $row['country_code']; ?></td>
<td width="10%" height="20"><? echo $row['title']; ?></td>
<td width="10%" height="20"><? echo $row['agency']; ?></td>
<td width="10%" height="20"><? echo $row['department']; ?></td>

</tr>
<?
$row_count++;
}
?>

我的问题是我想让所有内容都可编辑,这样如果用户在返回的结果中发现一些错误,他应该可以选择编辑并保存它,以便可以将其保存在数据库中。有这个插件吗?如果这是一个微不足道的问题,我很抱歉,我是 PHP 新手。谢谢

4

3 回答 3

2

编辑部分需要一些工作,但您可以使用 DataTables(一个 JQuery 插件)来处理排序、搜索等。

DataTables(jQuery 的表格插件) www.datatables.net

于 2013-01-14T03:15:08.817 回答
1

您对它的工作原理缺少一些了解。您现在要做的是在网页中显示数据。您需要实现一种机制来更新数据库,这不会立即发生,您需要以文本框等可编辑格式显示数据,而不是让用户更改它并单击更新按钮,例如当他是完毕。然后您需要响应单击该按钮,从文本框中获取已编辑的数据并更新数据库中的正确位置。简单地说,可以通过许多不同的方式来完成。开始做某事并发布一些代码,以便我们提供帮助:)

于 2013-01-14T03:21:44.860 回答
1

代替

'<td width="10%" height="20"><? echo $count; ?></td>' 

您应该将此列作为数据库中唯一的自动递增数字,以便可以识别每一行。从那里,您可以使用表单(复选框来选择需要编辑的列,或者可以在每列上编辑的文本输入)。如果您选择使用复选框和“编辑”按钮,请使用附加唯一 ID 的隐藏输入。然后检查是否

(isset($_POST['id']) && isset($_POST['firstName']))
{
    $firstName = sanitizeStrin($_POST['firstName']);
    $id = sanitizeString($_POST['id']);
  mysql_query( "UPDATE table SET first_name = '$firstName' WHERE uniqueID='$id'" );
}

.. 等以查看需要更新哪一行中的哪一列。检查每一列需要大量代码,但你明白了。希望这可以帮助。

于 2013-01-14T03:46:03.570 回答