我当前的代码是
<form action="post.php" method="post">
<input type="text" name="post"> <br />
<input type="text" name="uname" value="<?php echo $uname?>">
我需要$uname变量成为隐藏输入字段中的文本,这样我就可以将其发布到post.php,因为它是通过上一个发布到这个页面的,需要继续执行。有没有更好的方法可以做到这一点,比如直接发布变量,而不是通过输入字段?
尝试
<input type="hidden" name="uname" value="<?php echo $uname; ?>">
可能的主要改进是使用"隐藏"输入类型和正确的HTML转义值:
<input type="hidden" name="uname" value="<?php echo htmlspecialchars($uname); ?>">
请记住,任何恶意用户都可以通过这种方式查看并篡改传递回服务器的数据。如果这是一个问题,您可能希望将数据存储在用户的会话中。
您的type
需要是hidden
,并且输入元素(即value
(上没有text
属性。
完整示例:
<input type="hidden" name="uname" value="<?php echo $uname?>" />
<input type="hidden" name="uname" value="<?php echo $uname;?>" />
另一种选择是存储会话变量以将它们携带到其他页面。