0

我正在设置一个注册页面,我现在正在为留空的表格添加检查。

这是我为用户名表单提供的 HTML:

<label>Username</label>
<div class="form-group">
  <input name="username" maxlength="25" class="span-default" type="text" placeholder="Choose a username">
</div>

我拥有的PHP:

$username = $_POST['username'];

if(empty($username)) {
  // todo
}

我需要 PHP 的“待办事项”部分做的是在 HTML 的输入表单下添加一个新行,如下所示:

<label>Username</label>
<div class="form-group">
  <input name="username" maxlength="25" class="span-default" type="text" placeholder="Choose a username">
  <div class="form-warning">This username is already taken!</div>
</div>

我怎样才能做到这一点?

4

6 回答 6

2

如果你使用<?phpand?>标签,你可以将你的 PHP 直接嵌入到 HTML 中:

<label>Username</label>
<div class="form-group">
  <input name="username" maxlength="25" class="span-default" type="text" placeholder="Choose a username">
<?php
  if (empty($_POST['username'])) {
      echo '<div class="form-warning">This username is already taken!</div>';
  }
?>
</div>
于 2013-08-19T03:59:34.877 回答
0

有给出的选项。另一种方法可能是将变量作为类名添加到您的 html 中。

CSS:

.show_warning {
   display: block;
}

.hide_warning {
   display: none;
}

PHP:

    if(empty($username)){
      $username_warning = "show_warning";
    } else {
    $username_warning = "hide_warning";
   }

HTML + PHP

<label>Username</label>
<div class="form-group">
  <input name="username" maxlength="25" class="span-default" type="text" placeholder="Choose a username">
  <div class="form-warning <?php echo $username_warning;?>">This username is already taken!</div>
</div>

如果 $username 为空,则添加类“show_warning”。您可以轻松地将此类添加到其他变量并将它们与其他字段集成。

PHP:

if(empty($phonenumber))
  $phone_warning = "show_warning";
else
  $phone_warning = "hide_warning";
于 2013-08-19T04:24:50.343 回答
0

希望这可以帮助!

$username = $_POST['username'];

if(empty($username)) {
  echo "<div class=\"form-warning\">This username is already taken!</div>";
}
于 2013-08-19T03:56:00.837 回答
0

您可以按如下方式执行此操作。

<label>Username</label>
<div class="form-group">
  <input name="username" maxlength="25" class="span-default" type="text" placeholder="Choose a username">
   <?php echo $errorDiv;  ?>
</div>

并用于 PHP 检查。

$errorDiv = "";
if(empty($username)) {
  $errorDiv = "<div class=\"form-warning\">This username is already taken!</div>";
}
于 2013-08-19T03:58:58.343 回答
-1

试试这个家伙:

<?php

  $username = $_POST['username'];
  ?>
  <label>Username</label>
  <div class="form-group">
    <input name="username" maxlength="25" class="span-default" type="text" placeholder="Choose a username">
<?php
  if(!empty($_POST) && empty($username)) {
    <div class="form-warning">This username is already taken!</div>
  }
?>
</div>

干杯

于 2013-08-19T04:02:44.777 回答
-1

最好的方法是使用 Ajax 检查....

如果您使用的是 jQuery,请使用此 js

<label>Username</label>
<div class="form-group">
  <input name="username" maxlength="25" class="span-default" type="text" placeholder="Choose a username">
  <div class="form-warning">This username is already taken!</div>
</div>

<scrip type="text/javascript">
$(document).ready(function(){
    $(input[name=username]).change(function(){
         $.post(
               'your-sever-process-link',
               { username : $(this).val()},
               function(res) : { $(this).parent().childrens('.form-warning').html(res.message) },
               'json' 
          );
   });
});
</script>

假设您的服务器处理脚本将检查重复数据并发送 json 编码值。

ajax 验证处理也可以提供更好的用户体验。您可以使用https://github.com/posabsolute/jQuery-Validation-Engine。这很容易。

于 2013-08-19T04:07:29.713 回答