0

我这里有个小问题。我想要实现的是用户在文本框中输入唯一 ID,然后按下加载按钮,脚本正在 MySql 数据库中查找此参数。找到匹配数据后,应将其加载到下面的文本框中。

更新后的版本

<?php

mysql_connect ("localhost", "root","84946dff6e1")  or die (mysql_error());
mysql_select_db ("employees");


if(isset($_POST["loadbtn"]))
{
    $load = $_POST["loadbtn"];

    $sql = mysql_query("SELECT * FROM titles WHERE emp_no = '$load' ");
    $details = mysql_fetch_array($sql);

    $savedTitle = $details["title"];     
}
?>
<form method="post" action="changeTitleView.php">
<table width="400" border="0" cellspacing="1" cellpadding="2" align="center">
<tr>
<td width="150">Employee number</td>
<td><input type="text" name="load" /></td>
<td><input type="submit" name="loadbtn" value="Load" /></td>
</tr>
</table>
</form>
<br />
<br />
<form method="get" action="changeTitleView.php">
<table width="400" border="0" cellspacing="1" cellpadding="2" align="center">
<td width="150">Employee Title</td>
<td><input name="salary" type="text" value="<?php echo $savedTitle; ?>"></td>
</tr>
<td width="150"> </td>
<td>
<input name="add" type="submit" id="add" value="Update">
</td>
</tr>
</table>
</form>

在此处输入图像描述

感谢您的寻找和帮助:)

4

2 回答 2

0
<td><input name="salary" type="text" value="<? echo $empTitle; ?>"></td>

尝试将该行更改为:

<td><input name="salary" type="text" value="<?php echo $empTitle; ?>"></td>
于 2012-12-04T01:39:34.190 回答
0

试试这个

<?php
error_reporting(-1);// show all errors when debugging

// don't use these database commands
//mysql_connect ("localhost", "root","84946dff6e1")  or die (mysql_error());
//mysql_select_db ("employees");

// do it this way and don't show us your database credentials.
$conn = new mysqli('localhost', "root", "84946dff6e1",  'employees');

//declare your variables so if POST isn't true you don't have errors later

$load = "some Id";
$savedTitle = "no value yet!"; // use something interesting when testing

//you want the value of the textbox which name is load
if(isset($_POST["load"]))
{
    //never trust the user directly
     //$load = $_POST["load"]; 
     // do this
     $load = $conn->real_escape_string($_POST["load"]);

    $result = $conn->query("SELECT * FROM titles WHERE emp_no = '$load' ");

    $details = $result->fetch_assoc();

    $savedTitle = $details["title"];     
    // show me error when testing to see if something is wrong with query
     echo $conn->error;
}
?>
<form method="post" action="changeTitleView.php">
<table width="400" border="0" cellspacing="1" cellpadding="2" align="center">
<tr>
<td width="150">Employee number</td>
<td><input type="text" name="load" value="<?php echo $load; ?>" /></td>
<td><input type="submit" name="loadbtn" value="Load" /></td>
</tr>
</table>
</form>
<br />
<br />
<form method="get" action="changeTitleView.php">
<table width="400" border="0" cellspacing="1" cellpadding="2" align="center">
<td width="150">Employee Title</td>
<td><input name="salary" type="text" value="<?php echo $savedTitle; ?>"></td>
</tr>
<td width="150"> </td>
<td>
<input name="add" type="submit" id="add" value="Update">
</td>
</tr>
</table>
</form>

您将需要添加另一个 if 分支来处理更新标题的第二个表单并记住该表单是 GET 而不是 POST 像第一个表单一样。

于 2012-12-04T03:34:17.990 回答