我的工资单处理系统出现此问题。 在添加数据的区域下方是一个表格,其中显示了添加到付款表中的数据(empID除外,因为表格上显示的工资单详细信息必须来自与所选员工关联的数据。)< / p>
请参阅上面的链接查看图片以进一步了解下面的内容。
* [A] *是用户选择更新哪个员工的工资单详细信息的地方。选择单选按钮并单击“更新工资单详细信息”按钮后,用户将被带到更新工资单详细信息页面,即B。
* [B] *上半部分是用户输入与所选员工相关的所有工资单详细信息的位置。一旦用户点击保存,数据将被添加到数据库(支付表),这些细节将显示在输入区域下方的表格上。
然而,虽然我的支付表中有数据,但似乎没有显示在下表中,这就是消息显示“没有找到记录”的原因。以下是整个更新薪资数据页面的代码:
elseif ($_GET["k"]==41)
{
session_start();
if (isset($_SESSION["uname"]))
{
$empID=$_POST["empID"];
$aBulan=0; $aPetsa=0; $aTuig=0; $tuigYana=date("Y"); $tuigHadto=$tuigYana-5;
$anoBulan=array("January","February","March","April","May","June","July","August","September","October","November","December");
if ($_POST["sButton"]=="Update Payroll Details")
{
$anoSulod ="Payroll Details<hr>";
$anoSulod.="<form method='post' action='logged.php?k=42'>";
$anoSulod.="<input type='hidden' name='empID' value='".$empID."'>";
$anoSulod.="<table>";
$anoSulod.=" <tr><td>Name of employee : </td><td>".accessDatabase::hinoEmployee($empID)."</td></tr>";
$anoSulod.=" <tr>";
$anoSulod.=" <td>For the month ending : </td>";
$anoSulod.=" <td>";
// Kanan month ini dinhi
$anoSulod.=" <select name='bBulan'>";
for ($bulan=1; $bulan<=12; $bulan++)
{
if ($bulan==$aBulan) $anoSulod.=" <option value='".$bulan."' selected>".$anoBulan[$bulan-1];
else $anoSulod.=" <option value='".$bulan."'>".$anoBulan[$bulan-1];
}
$anoSulod.=" </select> ";
// Kanan year ini dinhi
$anoSulod.=" <select name='bTuig'>";
for ($tuig=$tuigYana; $tuig>=$tuigHadto; $tuig--)
{
if ($tuig==$aTuig) $anoSulod.=" <option value='".$tuig."' selected>".$tuig;
else $anoSulod.=" <option value='".$tuig."'>".$tuig;
}
$anoSulod.=" </select>";
$anoSulod.=" </td>";
$anoSulod.=" <tr>";
$anoSulod.=" <tr><td>Basic Salary : PhP</td><td><input type='text' name='bs'></td></tr>";
$anoSulod.=" <tr><td>PERA/ACA : PhP</td><td><input type='text' name='pa'></td></tr>";
$anoSulod.=" <tr><td>PAIC : PhP</td><td><input type='text' name='pc'></td></tr>";
$anoSulod.=" <tr><td>REL : PhP</td><td><input type='text' name='rl'></td></tr>";
$anoSulod.=" <tr><td>GSIS Premium/Loans : PhP</td><td><input type='text' name='gs'></td></tr>";
$anoSulod.=" <tr><td>HDMF Premium/Loans : PhP</td><td><input type='text' name='hd'></td></tr>";
$anoSulod.=" <tr><td>Coop Loans : PhP</td><td><input type='text' name='cl'></td></tr>";
$anoSulod.=" <tr><td>Union Dues : PhP</td><td><input type='text' name='ud'></td></tr>";
$anoSulod.=" <tr><td>Withholding Tax : PhP</td><td><input type='text' name='tx'></td></tr>";
$anoSulod.=" <tr><td colspan='2'><hr></tr>";
$anoSulod.=" <tr><td colspan='2'><input type='submit' value='Save'></tr>";
$anoSulod.=" <tr><td colspan='2'><hr></tr>";
$anoSulod.=" <tr>";
$anoSulod.=" <td colspan='2'>";
$anoSulod.=" <table border='1'>";
$anoSulod.=" <caption>Payroll Details</caption>";
$anoSulod.=" <tr>";
$anoSulod.=" <td> </td>";
$anoSulod.=" <td>Pay period</td>";
$anoSulod.=" <td>Basic Salary</td>";
$anoSulod.=" <td>PERA/ACA</td>";
$anoSulod.=" <td>PAIC</td>";
$anoSulod.=" <td>REL</td>";
$anoSulod.=" <td>GSIS Premium/Loans</td>";
$anoSulod.=" <td>HDMF Premium/Loans</td>";
$anoSulod.=" <td>Coop Loans</td>";
$anoSulod.=" <td>Union Dues</td>";
$anoSulod.=" <td>Withholding Tax</td>";
$anoSulod.=" </tr>";
$k="select b.payID, a.empname, date_format(b.date,'%M %Y') as date, b.bs, b.pa, b.pc, b.rl, b.gs, b.hd, b.cl, b.ud, b.tx, from emp a, pay b where a.empID=b.empID and a.empID=".$empID;
$q=mysql_query($k);
if (mysql_num_rows($q)>0)
{
while ($akonRows=mysql_fetch_array($q))
{
$anoSulod.=" <tr>";
$anoSulod.=" <td><input type='radio' name='payID' value='".$akonRows["payID"]."'></td>";
$anoSulod.=" <td>".$akonRows["date"]."</td>";
$anoSulod.=" <td>".$akonRows["bs"]."</td>";
$anoSulod.=" <td>".$akonRows["pa"]."</td>";
$anoSulod.=" <td>".$akonRows["pc"]."</td>";
$anoSulod.=" <td>".$akonRows["rl"]."</td>";
$anoSulod.=" <td>".$akonRows["gs"]."</td>";
$anoSulod.=" <td>".$akonRows["hd"]."</td>";
$anoSulod.=" <td>".$akonRows["cl"]."</td>";
$anoSulod.=" <td>".$akonRows["ud"]."</td>";
$anoSulod.=" <td>".$akonRows["tx"]."</td>";
$anoSulod.=" </tr>";
}
}
else
{
$anoSulod.=" <tr>";
$anoSulod.=" <td colspan='11' align='center'>No records found</td>";
$anoSulod.=" </tr>";
}
$anoSulod.=" </table>";
$anoSulod.=" </td>";
$anoSulod.=" </tr>";
$anoSulod.="</table>";
$anoSulod.="</form>";
$kadamoTD=2;
}
}
}
请帮忙。我真的无法弄清楚出了什么问题。请做...非常感谢!
答案 0 :(得分:0)
为每个mysql_query
添加错误检查。至少打个电话:
mysql_query($k) or die(mysql_error());
是:不要指望PHP函数(例如date_format
)在SQL查询中 。 (评论说date_format也是一个MySQL函数)
答案 1 :(得分:0)
更新:(删除我之前的答案,因为它不正确)
尝试打印查询,然后手动运行。然后将结果发回此处,以便我们告诉您更多信息。
答案 2 :(得分:0)
代码真的很乱。在我的头脑和我发现的第一个错误:
$empID=$_POST["empID"];
之后,您会显示几行以显示表单,然后提交该表单。在那个表格上你有
<input type='hidden' name='empID' value='".$empID."'>
我假设您通过$_GET
请求结束该页面,因为否则您可以通过其他一项检查elseif ($_GET["k"]==41)
。所以,如果我是对的,那么你的$_POST["empID"]
变量将是空的。{/ p>
一般来说,为什么你这么多$empID
和$_GET
并且没有坚持其中一个呢?
提示上面检查的最简单方法之一就是回显$_POST
或查询
答案 3 :(得分:0)
好的,在FROM之前删除逗号 - “b.tx”应为“b.tx”