php表单保存输入

时间:2015-06-23 18:05:53

标签: php forms

我需要你的一些表格/ php代码的帮助:

  1. 2Fields for first name for name for fam.name
  2. 如果"用户"填写两个字段,回显他填写的内容
  3. 如果"用户"不要用填写错误信息填写他回来的任何字段
  4. 如果他只填写2个字段中的1个
  5. ,则相同
  6. 我的问题是"用户"只需填写1个字段并发送(提交)我希望他像现在一样得到错误消息,但也保存他的输入(他填写的字段中的日期)所以他只需填写其他字段而不是两个字段。
  7. 我用session_start()完成了所有尝试;但事情却失败了。

    <?php
    
    $errormessage="";
    
    //check if 1 of 2 fields is empty
    if(empty($_POST['vorname'])){
    $errormessage=$errormessage." First field ,";
    }
    
    if(empty($_POST['nachname'])){
    $errormessage=$errormessage." Second field  ,";
    }
    
    //Submit starts
    if (isset($_POST['go'])) {
    
        if (!empty($_POST['vorname'])&& !empty($_POST['nachname'])){
            echo "First field :  ".$_POST["vorname"]." ";       
            echo " 2nd field:  ".$_POST["nachname"];
          }//end empty
    
        //ELse if inputs empty
        if (!empty($errormessage)) {  ?>
        <form action="<?php echo $_SERVER['PHP_SELF'] ?>" method="post">
            <input type="text" name="vorname" />
            <input type="text" name="nachname"  />
            <input type="submit" name="go" />
            <?php echo "error:  ".$errormessage; ?>
        </form>
    <?php  } //ende  if errormessage
    
        }//ende if isset go
    
    else {//start side ?>
    <form action="<?php echo $_SERVER['PHP_SELF'] ?>" method="post">
        <input type="text" name="vorname" />
        <input type="text" name="nachname" />
        <input type="submit" name="go" />
    </form> 
    <?php}  //end else?> 
    


1 个答案:

答案 0 :(得分:1)

如果用户仅为一个字段指定了一些信息并将其发送,为什么不将正确的填充数据从$ _POST var粘贴到您的一个输入的值属性中:

<input type="text" name="vorname" value="<?php echo $correct_data ?>"/>

并显示其他错误消息,就像您一样?

我的意思是,你可以将旧的$ _POST ['vorname']和$ _POST ['nachname']保存到两个额外的变量中,如果其中一个$ _POST字段为空,其中一个变量为空,则添加此项以html格式表示输入的值为attrubutes:

$errormessage = "";
$old_vorname = empty($_POST['vorname']) ? "" : $_POST['vorname'];
$old_nachname = empty($_POST['nachname']) ? "" : $_POST['nachname'];
....
//ELse if inputs empty
if (!empty($errormessage)) {  ?>
<form action="<?php echo $_SERVER['PHP_SELF'] ?>" method="post">
    <input type="text" name="vorname" value="<?php echo $old_vorname; ?>"/>
    <input type="text" name="nachname" value="<?php echo $old_nachname; ?>"/>
    <input type="submit" name="go" />
    <?php echo "error:  ".$errormessage; ?>
</form>

html input元素的value属性包含它的实际内容,你可以在网页上看到或编辑。