首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何使PHP Update MySQL表格显示所有行数据

问如何使PHP Update MySQL表格显示所有行数据
EN

Stack Overflow用户
提问于 2014-02-06 00:02:47
回答 3查看 3K关注 0票数 0

我正在尝试让这个PHP Update表单显示mysql表中的所有行数据。虽然它确实可以工作并更新我的表,但我希望它显示每个员工,而不是为了编辑而搜索员工编号。基本上,我希望它显示一个员工数组,每个员工都有编辑输入,而不是必须搜索每个员工。我之所以这样问,是因为我在整个网络上进行了大量的搜索,但没有找到我的诉求的解决方案。

任何帮助都将不胜感激。

谢谢

PHP代码:

代码语言:javascript
复制
<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>
EN

回答 3

Stack Overflow用户

发布于 2014-02-06 00:18:21

尝试将表单下的sql添加到更新表中。使用var_dump查看您是否收到雇主id和工资的值。

票数 0
EN

Stack Overflow用户

发布于 2014-02-06 00:21:10

是否希望显示每个员工的下拉菜单,然后允许用户输入该员工的新工资?为此,您可以这样做:

代码语言:javascript
复制
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>";

如果我误解了,请原谅。

票数 0
EN

Stack Overflow用户

发布于 2014-02-06 03:34:34

因此,您希望在要求用户输入新工资的表单中显示该员工的当前工资吗?如果是这样的话,尝试如下所示:

代码语言:javascript
复制
$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'>";
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/21582179

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档