你好我试图在我的html页面上创建一个登录框,我使用的是因为如果用户登录然后我会显示“欢迎,(他的用户名)”否则我会显示用户名和密码。她是代码:
<?php session_start();if(!isset($_SESSION["$username"])) { print "<div class=\"login\">Welcome, $username <br/><font Style=\"font-size:12px;\"><a href=\"edit.php\">Edit Account</a> | <a href= \"log_out.php \">Logout</a></font>"; } else { print "div class=\"login\"> <form method=\"post\" action=\"login.php\"> Username:<input type=\"text\" size=\"30\" name=\"username\"/><br/> Password:<input type=\"password\" size=\"30\" name=\"password\"/><br/> <font Style=\"font-size:12px;\"><a href=\"forgotpass.html\"> forgot password? </a> | <a href= \"register.html \">Register</a></font><br/> <input type=\"submit\" value=\"Login\" class=\"right\"/> </form>"; } ?>
如果你在.php文件上执行这个输出有点奇怪,就像登录假设是一个按钮但是结果是文本而其他如果被打印了。任何人都可以告诉我任何替代方案吗?
答案 0 :(得分:0)
将>
和$lt;
(文本搜索和替换)替换为<
和>
,或使用htmlspecialchars_decode()解码您的php字符串。
答案 1 :(得分:0)
您必须更改等效&lt; &gt;(html安全符号)特殊字符&lt;&gt ;.例如:
echo '<div class=\"login\">Welcome, $username <br/>';
答案 2 :(得分:0)
如果没有数据库,不确定你的观点是什么...... 试试这个tutorial
答案 3 :(得分:0)
请勿使用> and $lt;
将其替换为< and >
<?php
session_start();
if(!isset($_SESSION["$username"])) {
echo '<div class="login">Welcome, '.$username.' </div><font style="font-size:12px;"><a href="edit.php">Edit Account</a> | <a href="log_out.php">Logout</a></font>;';
} else {
echo '<div class="login">
<form method="post" action="login.php">
Username:<input type="text" size="30" name="username"/><br/>
Password:<input type="password" size="30" name="password"/><br/>
<font Style="font-size:12px;"><a href="forgotpass.html"> forgot password? </a> | <a href= "register.html ">Register</a></font><br/>
<input type="submit" value="Login" class="right"/>
</form>
</div>';
}
?>