我有一个使用php的网页,有一堆输入字段,用户在其中输入一些数据,我把输入转换成SQL语句查询一些数据库。我成功地解析输入字段,并把SQL语句放在一起,但当他们点击“提交”按钮时,所有的输入字段被清除。我如何才能使这些输入字段不会在每次用户点击“提交”时被删除?
jv4diomz1#
将它们存储在局部变量中,如
<?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>
h9a6wy2h2#
像这样的东西应该工作。
<? 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>
igsr9ssn3#
你需要检查POST值(假设你正在使用POST)在页面加载时是否已经被设置(因为它们已经被提交了),如果已经被设置,就将它们的内容回显到表单字段的value属性中,或者根据字段类型设置checked=checked等。
vdgimpew4#
这对我来说一直很有效:<input type="text" name="somename" value="<?php echo htmlspecialchars($_POST['somename']); ?>">
<input type="text" name="somename" value="<?php echo htmlspecialchars($_POST['somename']); ?>">
jdzmm42g5#
关键是要将过账值存储在session中,并使用value tag显示。示例:超文本:
<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; }
mxg2im7a6#
<?php if(isset($_POST['submit'])) { $decimal = $_POST['decimal']; ?> <form action="" method="post"> <input type="number" name="decimal" required value="<?php echo (isset($decimal)) ? $decimal: ''?>"> </form>
只需在输入值中使用**$_POST ['decimal']**
ldioqlga7#
您是否在PHP中使用过会话和Cookie?您可以在表单提交时将值存储在会话中,然后在数据库中为用户更新,然后检查是否存在用户会话以及是否为字段输出设置了值,否则输出空值。
x33g5p2x8#
您只需要确保HTML输入值包含一个php echo语句,该语句包含该字段的相应php变量。
xxls0lw89#
最简单的答案
`<form method="post" onsubmit="return false">`
用PHP编写输入代码是危险的,即使是使用html实体-希望这能有所帮助
9条答案
按热度按时间jv4diomz1#
将它们存储在局部变量中,如
h9a6wy2h2#
像这样的东西应该工作。
igsr9ssn3#
你需要检查POST值(假设你正在使用POST)在页面加载时是否已经被设置(因为它们已经被提交了),如果已经被设置,就将它们的内容回显到表单字段的value属性中,或者根据字段类型设置checked=checked等。
vdgimpew4#
这对我来说一直很有效:
<input type="text" name="somename" value="<?php echo htmlspecialchars($_POST['somename']); ?>">
jdzmm42g5#
关键是要将过账值存储在session中,并使用value tag显示。示例:
超文本:
PHP语言:
mxg2im7a6#
只需在输入值中使用**$_POST ['decimal']**
ldioqlga7#
您是否在PHP中使用过会话和Cookie?
您可以在表单提交时将值存储在会话中,然后在数据库中为用户更新,然后检查是否存在用户会话以及是否为字段输出设置了值,否则输出空值。
x33g5p2x8#
您只需要确保HTML输入值包含一个php echo语句,该语句包含该字段的相应php变量。
xxls0lw89#
最简单的答案
用PHP编写输入代码是危险的,即使是使用html实体-希望这能有所帮助