我听说Value属性只是一个默认属性,所以我使用value属性从前一个文件中获取数据并填充表单区域。
但它只使用value attribute()的值来存储在DB中。例如,如果客户更改了在文本框中传递的值(通过value属性传递)并提交信息,则更改的值不会存储在DB中,而是存储在value属性中的值将被保存。
我将值传递给html表单,来自之前的PHP页面..
<form action="parentid1.php" method="post">
<label>id:</label>
<input type="text" name="id" value="<?php echo htmlspecialchars($_GET['id']) ?>" size="50"/> <br/>
<label>Name:</label>
<input type="text" name="name" value="<?php echo htmlspecialchars($_GET['name']) ?>" size="50"/><br/>
<input type="submit" value="submit" /><br/>
</form>
在我的下一个文件中,我正在尝试更新声明如下的值:
$value = mysql_real_escape_string($_POST['id']);
$value1 = mysql_real_escape_string($_POST['name']);
$sql = "UPDATE table SET name='$value1'WHERE doi ='$value'";
以下是这种情况: 将形成具有一些值的文本类型的表单结构。 现在客户希望更改表单框中的数据更改它并提交它,但更改的内容不会保存在数据库中,而只保存以前的值。
我做错了什么?
答案 0 :(得分:1)
您似乎混合了GET和POST数据。在HTML中你使用GEt但在PHP POST中。 如果您不了解GET或POST,请尝试使用$ _REQUEST。
答案 1 :(得分:0)
$sql = "UPDATE `table` SET `name`='".$value1."' WHERE `doi`='".$value."'";
$result = mysql_query($sql) or die(mysql_error());
并显示您的mysql错误。