使用PHP设置HTML属性

时间:2016-04-03 20:49:33

标签: php html

我想构建一个简单的服务器端验证,我遇到了一个问题:

当用户提交数据并且不正确时,我想将正确的数据保存到输入中(例如:如果我有两个字段,用户名和电子邮件,但只有电子邮件无效,用户名应该是保存)。

在以下代码中,我尝试仅在初始化变量$validUser时创建属性值。否则,我不想要值属性。代码无效。

   <input type="text" placeholder="Username" name="username" id="username"
                   <?php
                      if ($validUser) echo "value='$validUser'";
                   ?>
    />

我该怎么办?

1 个答案:

答案 0 :(得分:0)

  

当用户提交数据时......

你的意思是有$ _POST或$ _GET请求吗?如果是这样,这会更有意义

<input id="username"
       name="username"
       placeholder="Username"
       value="<?php echo isset($_GET['username']) ? $_GET['username'] : '' ?>">

如果$_GET['username']不存在,您只需获得value=""即可。

通过PHP手工编写HTML是一项繁琐的工作。为了解决这个问题,我编写了一个名为naomik/htmlgen的实用程序,它使得它更容易忍受

<?php
use function htmlgen\html as h;

h('input#username', [
  'name'=>'username',
  'placeholder'=>'Username',
  'value'=>isset($_GET['username']) ? $_GET['username'] : ''
]);

// => <input id="username" name="username" placeholder="Username" value="someuser">