按钮单击时,数据未从MySql加载到文本框中

时间:2012-12-04 01:35:47

标签: php mysql forms textbox

我在这里有点问题。我想要实现的是用户类型在唯一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>

enter image description here

感谢您寻求帮助:)

2 个答案:

答案 0 :(得分:0)

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

尝试将该行更改为:

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

答案 1 :(得分: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,就像第一种形式一样。