php通过表格更新表 [英] php update table by form
问题描述
我尝试从表单更新表。
我有3页。第一个用编辑链接查询我表格中的所有行。
当点击编辑(第2页)时,代码将获取$ id并将其放入url中。 $ id从网址中提取,用于填充表单。
我的问题是将更新后的表单信息传递到我的表中。基本上没有更新。
第二页
< ;?php
包含'../db/config.php';
包含'../db/opendb.php';
$ id = $ _GET [id];
$ order =SELECT * FROM tableName where id ='$ id';
$ result = mysql_query($ order);
$ row = mysql_fetch_array($ result);
?>
< form method =postaction =edit_data.php>
< input type =hiddenname =idvalue =<?php echo$ row [id]?>>>
< tr>
< td>标题< / td>
< td>
< input type =textname =titlesize =20value =<?php echo$ row [title]?>>>
< / td>
< / tr>
< tr>
< td>发布< / td>
< td>
< input type =textname =postsize =40value =<?php echo
$ row [post]?>>
< / td>< / tr>
< tr>
< td align =right>
< input type =submitname =submit valuevalue =Edit>
< / td>
< / tr>
< / form>
* 固定第三页
include'../db/config.php';
包含'../db/opendb.php';
if(isset($ _ POST [id])){
$ id = mysql_real_escape_string(trim($ _ POST ['id']));
} else {
$ id = NULL;
}
if(isset($ _ POST [title])){
$ title = mysql_real_escape_string(trim($ _ POST ['title']));
} else {
$ title = NULL;
}
if(isset($ _ POST [post])){
$ post = mysql_real_escape_string(trim($ _ POST ['post']));
} else {
$ post = NULL;
}
$ query =UPDATE tableName SET title ='$ title',post ='$ post'WHERE id ='$ id';
mysql_query($ query);
?>
提前致谢:)
*编辑谢谢大家
if(isset($ _ POST [title])){
$ title = mysql_real_escape_string(trim($ _ POST ['title']));
} else {
$ title = NULL;
}
if(isset($ _ POST [post])){
$ post = mysql_real_escape_string(trim($ _ POST ['post']));
} else {
$ post = NULL;
$ query =UPDATE tableName SET title ='$ title',post ='$ post'WHERE id ='$ id';
mysql_query($ query);
我还会推荐mysqli函数而不是mysql,我可能不会调用变量和表列'post'以避免混淆。
I'm trying to update a table from a form.
I have 3 pages. The first one queries all of the rows from my table with an "edit" link. When edit is clicked (page 2) the code pulls the $id and puts it in the url. The $id is pulled from the url and is used in a query to fill a form.
My problem is passing the updated form info to my table. Basically the update isn't happening.
Second page
<?php
include '../db/config.php';
include '../db/opendb.php';
$id = $_GET["id"];
$order = "SELECT * FROM tableName where id='$id'";
$result = mysql_query($order);
$row = mysql_fetch_array($result);
?>
<form method="post" action="edit_data.php">
<input type="hidden" name="id" value="<?php echo "$row[id]"?>">
<tr>
<td>Title</td>
<td>
<input type="text" name="title" size="20" value="<?php echo"$row[title]"?>">
</td>
</tr>
<tr>
<td>Post</td>
<td>
<input type="text" name="post" size="40" value="<?php echo
"$row[post]"?>">
</td></tr>
<tr>
<td align="right">
<input type="submit" name="submit value" value="Edit">
</td>
</tr>
</form>
* fixed third page
include '../db/config.php';
include '../db/opendb.php';
if (isset($_POST[id])){
$id = mysql_real_escape_string(trim($_POST['id']));
}else{
$id = NULL;
}
if (isset($_POST[title])){
$title = mysql_real_escape_string(trim($_POST['title']));
}else{
$title = NULL;
}
if (isset($_POST[post])){
$post = mysql_real_escape_string(trim($_POST['post']));
}else{
$post = NULL;
}
$query = "UPDATE tableName SET title='$title', post='$post' WHERE id='$id'";
mysql_query($query);
?>
thanks in advance : )
*edit thanks everyone
if (isset($_POST[title])){
$title = mysql_real_escape_string(trim($_POST['title']));
}else{
$title = NULL;
}
if (isset($_POST[post])){
$post = mysql_real_escape_string(trim($_POST['post']));
}else{
$post = NULL;
}
$query = "UPDATE tableName SET title='$title', post='$post' WHERE id='$id'";
mysql_query($query);
I would also recommend mysqli functions instead of mysql and I probably wouldn't call a variable and table column 'post' to avoid confusion.
这篇关于php通过表格更新表的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!