首页 > 解决方案 > 更新到 php 7 后密码框不显示

问题描述

我的虚拟主机现在决定使用 PHP 7,我的一些页面出现了问题,设法修复了大部分问题,但这对我来说是个头疼的问题。密码框不显示,但同一页面中的其他框呢?所以我不能输入密码来注册

我注意到高度的定义不同,如果这是问题,不知道如何解决

<?PHP
require_once("./include/membersite_config.php");

if(isset($_POST['submitted']))
{
   if($fgmembersite->RegisterUser())
   {
        $fgmembersite->RedirectToURL("thank-you.html");
   }
}

?>
  <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"  "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
  <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en-US" lang="en-US">

  <head>
    <meta http-equiv='Content-Type' content='text/html; charset=utf-8' />
    <title>Contact us</title>
    <link rel="STYLESHEET" type="text/css" href="style/fg_membersite.css" />
    <script type='text/javascript' src='scripts/gen_validatorv31.js'></script>
    <link rel="STYLESHEET" type="text/css" href="style/pwdwidget.css" />
    <script src="scripts/pwdwidget.js" type="text/javascript"></script>
  </head>

  <body>

    <!-- Form Code Start -->
    <div id='fg_membersite'>
      <form id='register' action='<?php echo $fgmembersite->GetSelfScript(); ?>' method='post' accept-charset='UTF-8'>
        <fieldset>
          <legend>Register</legend>

          <input type='hidden' name='submitted' id='submitted' value='1' />

          <div class='short_explanation'>* required fields</div>
          <input type='text' class='spmhidip' name='<?php echo $fgmembersite->GetSpamTrapInputName(); ?>' />

          <div><span class='error'><?php echo $fgmembersite->GetErrorMessage(); ?></span></div>
          <div class='container'>
            <label for='name'>Your Full Name*: </label><br/>
            <input type='text' name='name' id='name' value='<?php echo $fgmembersite->SafeDisplay(' name ') ?>' maxlength="50" /><br/>
            <span id='register_name_errorloc' class='error'></span>
          </div>
          <div class='container'>
            <label for='email'>Email Address*:</label><br/>
            <input type='text' name='email' id='email' value='<?php echo $fgmembersite->SafeDisplay(' email ') ?>' maxlength="50" /><br/>
            <span id='register_email_errorloc' class='error'></span>
          </div>
          <div class='container'>
            <label for='username'>UserName*:</label><br/>
            <input type='text' name='username' id='username' value='<?php echo $fgmembersite->SafeDisplay(' username ') ?>' maxlength="50" /><br/>
            <span id='register_username_errorloc' class='error'></span>
          </div>
          <div class='container' style='height:80px;'>
            <label for='password'>Password*:</label><br/>
            <div class='pwdwidgetdiv' id='thepwddiv'></div>
            <noscript>
    <input type='password' name='password' id='password' maxlength="50" />
    </noscript>
            <div id='register_password_errorloc' class='error' style='clear:both'></div>
          </div>

          <div class='container'>
            <input type='submit' name='Submit' value='Submit' />
          </div>

        </fieldset>
      </form>
      <!-- client-side Form Validations:
Uses the excellent form validation script from JavaScript-coder.com-->

      <script type='text/javascript'>
        // <![CDATA[
        var pwdwidget = new PasswordWidget('thepwddiv', 'password');
        pwdwidget.MakePWDWidget();

        var frmvalidator = new Validator("register");
        frmvalidator.EnableOnPageErrorDisplay();
        frmvalidator.EnableMsgsTogether();
        frmvalidator.addValidation("name", "req", "Please provide your name");

        frmvalidator.addValidation("email", "req", "Please provide your email address");

        frmvalidator.addValidation("email", "email", "Please provide a valid email address");

        frmvalidator.addValidation("username", "req", "Please provide a username");

        frmvalidator.addValidation("password", "req", "Please provide a password");

        // ]]>
      </script>

      <!--
Form Code End (see html-form-guide.com for more info.)
-->

  </body>

  </html>

标签: phphtmlcss

解决方案


该问题与您的 PHP 升级无关。密码字段包含在一个<noscript>标签中,除非脚本被关闭,否则它将隐藏内容。

https://developer.mozilla.org/en-US/docs/Web/HTML/Element/noscript

删除<noscript>标签,将显示输入。


推荐阅读