我有一个问题,我是PHP新手,我一直在做一些练习。我目前的工作是创建一个简单的表单来搜索数据库(名字,姓氏)。返回的结果应该填充到另一个表单中。这样,如果我想更新记录,我所要做的就是更改填充表单的值并点击更新。我创建数据库没有问题。PHP,关于搜索和更新记录的问题
以下是代码。 (大家不要笑,我很新...我相信有这样做的更有效的方式,但我只是玩弄现在)
这里是形式:
<form action="" method="post">
<strong>Search for name</strong><br>
<label for="fname">First Name</label>
<input type="text" name="fname">
<label for="lname">Last Name</label>
<input type="text" name="lname">
<input type="submit" name="submit" value="Search">
</form>
这里是PHP:
if(isset($_POST['submit'])){
$first_name = $_POST['fname'];
$last_name = $_POST['lname'];
if ($first_name == NULL || $last_name == NULL) {
echo "please enter search record";
}
else {
$query = "SELECT first_name, last_name FROM formdata WHERE first_name LIKE '%$first_name%' OR last_name LIKE '%$last_name%'";
$result = mysqli_query($conn, $query);
$result_array = mysqli_fetch_row($result);
$fname_value = $result_array[0];
$lname_value = $result_array[1];
echo "
<form action='' method='post'>\n
<label for='fname_u'>First Name</label>\n
<input type='text' name='fname_u' value='$fname_value'>\n
<label for='lname_u'>Last Name</label>\n
<input type='text' name='lname_u' value='$lname_value'>\n
<input type='submit' name='update' value='Update'>\n
</form>";
}
}
if(isset($_POST['update'])) {
$first_name_u = ($_POST['fname_u']);
$last_name_u = ($_POST['lname_u']);
$query_update = "UPDATE formdata SET first_name = '$first_name_u', last_name = '$last_name_u' WHERE first_name = '$fname_value';";
echo $query_update; // this is just for testing
}
此代码似乎工作,做我想做的,一路攀升时,我提交更新的信息。我无法弄清楚如何将$ fname_value变量的值传递给if(isset($ _POST ['update']))条件。我想我不能,因为他们是两个不同的POSTS?我真的不知道......我只需要找到一种方法来获取检索到的表单数据的值并将其用于WHERE子句。
同样,我很新的,刚开始我的脚湿用这种东西...任何帮助将是巨大的
感谢
我们都是新的一次。任何看着代码和笑的人都会傲慢到危险的地步。欢迎来到网站设计的酷炫世界,祝您学习愉快! – 2011-06-01 03:43:58