如何使PHP更新MySQL表格显示所有数据行

时间:2014-02-05 16:02:47

标签: php html mysql

我正在尝试使这个PHP更新表单显示mysql表中的所有行数据。虽然它可以正常工作并更新我的表格,但我希望它能够显示每个员工,而不是必须搜索员工编号才能进行编辑。基本上我希望它显示一组员工,每个员工都有编辑输入,而不是必须搜索每一个。我这是在问这个问题,因为我在网上搜索得很多,并没有找到解决方案。

任何帮助将不胜感激。

谢谢

PHP代码:

<html>
<head>
<title>Update a Record in MySQL Database</title>
</head>
<body>

<?php
if(isset($_POST['update']))
{
$dbhost = '';
$dbuser = '';
$dbpass = '';
$conn = mysql_connect($dbhost, $dbuser, $dbpass);
if(! $conn )
{
  die('Could not connect: ' . mysql_error());
}

$emp_id = $_POST['emp_id'];
$emp_salary = $_POST['emp_salary'];

$sql = "UPDATE employee ".
       "SET emp_salary = $emp_salary ".
       "WHERE emp_id = $emp_id" ;

mysql_select_db('');
$retval = mysql_query( $sql, $conn );
if(! $retval )
{
  die('Could not update data: ' . mysql_error());
}
echo "Updated data successfully\n";
mysql_close($conn);
}
else
{
?>
<form method="post" action="<?php $_PHP_SELF ?>">
<table width="400" border="0" cellspacing="1" cellpadding="2">
<tr>
<td width="100">Employee ID</td>
<td><input name="emp_id" type="text" id="emp_id"></td>
</tr>
<tr>
<td width="100">Employee Salary</td>
<td><input name="emp_salary" type="text" id="emp_salary"></td>
</tr>
<tr>
<td width="100"> </td>
<td> </td>
</tr>
<tr>
<td width="100"> </td>
<td>
<input name="update" type="submit" id="update" value="Update">
</td>
</tr>
</table>
</form>
<?php
}
?>
</body>
</html>

3 个答案:

答案 0 :(得分:0)

尝试在表单下添加sql以更新表。 make var_dump以查看您是否收到雇主ID广告工资的值。

答案 1 :(得分:0)

您是否需要显示每位员工的下拉菜单,然后允许用户为该员工输入新薪水?为此,你可以这样做:

echo "<select name='employee'>";
$query = mysql_query("SELECT * FROM employees");
while($row = mysql_fetch_assoc($query)) {
 $id = $row['emp_id'];
 echo "<option value='$id'>$id</option>";
}
echo "<input type='text' name='salary'>
echo "</select>";

如果我误解了,请原谅我。

答案 2 :(得分:0)

所以你想显示员工的当前工资以及要求用户输入新工资的表格吗?如果是这样,尝试这样的事情:

$employee = $_POST['employee']; // Or however you're retrieving the current employee the user is editing
$query = mysql_query("SELECT * FROM employees WHERE username='$employee'");

echo "<form action='FILENAME.PHP' method='post'>";
while($row = mysql_fetch_assoc($query)) {
    $salary = $row['emp_salary'];
    echo "Current salary: $salary <br />";
}

echo "<input type='text' name='salary'>";