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