我有一个使用php的网页,并且有一堆输入字段,用户输入一些数据,我将输入转换成SQL语句来查询某些数据库。我成功解析了输入字段并将SQL语句放在一起,但是当他们单击“提交”按钮时,所有输入字段都被清除。如何在每次用户点击“提交”时都不会删除这些输入字段?
答案 0 :(得分:2)
将它们存储在
等局部变量中<?php
$name = '';
$last = '';
if(isset($_POST['post_me'])) {
$name = $_POST['post_me'];
$last = $_POST['last'];
//Process further
}
?>
<form method="post">
<input type="text" name="name" value="<?php echo $name; ?>" />
<input type="text" name="last" value="<?php echo $last; ?>" />
<input type="submit" name="post_me" />
</form>
答案 1 :(得分:1)
您需要检查POST值(假设您正在使用POST)是否已在页面加载时设置(因为它们已经提交)。如果已设置,则将其内容回显到表单字段的值属性中,或根据字段类型设置checked = checked等。
答案 2 :(得分:1)
这样的事情应该有效。
<?
if(!isset($_POST['stackoverflow'])){
$txt = "";
} else {
$txt = $_POST['stackoverflow'];
}
?>
<!doctype html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title></title>
</head>
<body>
<form action="" method="post">
<input type="text" name="stackoverflow" value="<?= $txt ?>">
</form>
</body>
</html>
答案 3 :(得分:1)
这一直对我有用:
<input type="text" name="somename" value="<?php echo htmlspecialchars($_POST['somename']); ?>">
答案 4 :(得分:0)
您是否在PHP中使用过会话和Cookie?
您可以在表单提交之前将值存储在数据库中为用户更新,然后检查是否存在用户会话,并为字段输出设置值,否则输出null。
答案 5 :(得分:0)
关键是将post值存储在session中并使用value tag显示它。
例如:
HTML:
<form action="index.php" method="post">
<input type="text" name="name" placeholder="First Name"
value="<?php
if (isset($_SESSION['name'])) {
echo $_SESSION['name'];
}?>" >
<input type="submit" name="submit">
</form>
PHP:
session_start();
if (isset($_POST['submit'])) {
$name=$_POST['name']);
$_SESSION['name']=$name;
}
答案 6 :(得分:0)
最简单的答案
`<form method="post" onsubmit="return false">`
即使使用htmlentities,用PHP编码输入也是危险的-希望这会有所帮助
答案 7 :(得分:-1)
您只需要确保HTML输入值具有该字段相应php变量的php echo语句即可。