表单值无效

时间:2012-12-04 15:27:08

标签: html syntax

我有一个index.php页面,其中有一个登录表单。

的index.php:

<?php include_once("include/header.php");?>

</head>

<body>

<div class="mainContainer">
    <div class="header"><!--Header start-->

        <!--Inlcluding Login Barr-->
        <?php include("include/loginBar.php");?>           

    <div class="clear"></div>
    </div><!--Header end-->

    <div class="centerContent"><!--Center content start-->        
    </div><!--center content end-->

    <div class="clear"></div>
    <?php include("include/footer.php");?> 

</div>

</body>
</html>

的header.php:

<?php session_start();
ob_start();
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> 

<link type="text/css" href="css/mainStylesheet.css" rel="stylesheet" />

<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.7.2/jquery.min.js"></script>

footer.php

<? ob_end_flush(); ?>

loginBar.php

        <div class="loginBar">

            <form name="Login" id="Login" action="actions.php" method="post">
                  <span class="label">Login</span> 
                  <input type="text" name="name" id="username" value="Username" onBlur="if(this.value==''){this.value=this.defaultValue;}" onFocus="if(this.value==this.defaultValue){this.value='';}" />
                  <input type="password" name="password" id="userpassword" value="Password" onBlur="if(this.value==''){this.value=this.defaultValue;}" onFocus="if(this.value==this.defaultValue){this.value='';}"/>
                  <input class="loginButton" id="loginButton" type="submit" value="Go" />

                  <input type="hidden" value="loginValues"  name="login" id="login"/>
            </form>
        </div>

actions.php

<?php session_start();

echo $_POST['name']; echo $_POST['password'];

if(isset($_POST['login']) && $_POST['login']=="loginValues"){

    echo "HAHAHAHAHA";  
}

?>

问题是,表单值在actions.php页面的IF块之外回显,但在此块中没有任何作用。这意味着表单值已成功传输。

在firebug控制台中,我看到一条错误,指出“未声明HTML文档的字符编码。如果文档包含US-ASCII范围之外的字符,文档将在某些浏览器配置中使用乱码文本呈现。必须在文档或传输协议中声明页面的编码。“

我已经尝试了所有选项,并在HEAD标记之后放置了这一行: <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />,但没有任何作用。

请帮帮我。感谢。

1 个答案:

答案 0 :(得分:1)

除非你的复制/粘贴只是一个拼写错误,否则你有一个未关闭的输入,这可能会导致输入后的输入(在这种情况下登录)。

<input class="loginButton" id="loginButton" type="submit" value="Go"

应该是

<input class="loginButton" id="loginButton" type="submit" value="Go" />