php multipage输入值会话变量print

时间:2017-12-21 18:52:37

标签: php forms session-variables

请在这里纠正我。

我创建了多页面表单,我想将数据从每个页面传递到最终页面,然后通过电子邮件提交。第一个是apply.php,有很多输入字段,但是我已经列出了其中的一些,这里有些人在护照字段中输入护照号码时,我希望将其传递到表格的每个页面并在几个地方打印每页。在传递其中一些字段时遇到一些问题。

这是第一页(apply.php)

    <?php
    // Start the session
    session_start();

    ?>

    <form name="search_form" method="post" onSubmit="return chk();" action="apply2.php">

    <input name="passportno" id="passportno" type="text" maxlength="20" placeholder="Enter Passport No." size="43" >

<input name="birthdate" type="date"  class="textBoxDashed" size="43" id="birthdate" datepicker="true" datepicker_min="01/01/1900" datepicker_max="21/11/2017" maxlength="10" datepicker_format="DD/MM/YYYY" isdatepicker="true" value="">

<input name="button1" type="submit" value="Continue">

这是apply2.php。这里有一些问题,我无法找到,因为你可以看到下面的代码,我能够打印出生日期,但不能打印护照否(从form1输入)。请在这里纠正我的错误。

    <?php
    session_start();
    $msg="";
    ////include("connect.php");
    if (isset($_POST['button1']))
    {
        extract($_POST);
        $code=strtolower($_POST['captcha_code']);
        $sess=strtolower($_SESSION["code"]);
    if ($sess==$code)
    {
        $appid=time().rand();
        $result=mysqli_query($con,"select *from registration where email='$email'");
        if (mysqli_fetch_row($result)>0)
        {
            ?>
            <script>
            alert("This email is already exist");
            </script>
            <?php
        }
        else
        {
         $query="insert into registration values('$appid','$passportno','$birthdate','$email')";
        if (mysqli_query($con,$query))
        $msg="Data saved Successfully.Please note down the Temporary Application ID $appid";
        else
        echo "not inserted".mysqli_error($con);

        if (!isset($_SESSION["appid"]))
        {
        $_SESSION["appid"]=$appid;
        }

        }
    }
    else
    {
        ?>

        <?php
    }

    }
    ?>

    <form name="OnlineForm" method="post" onsubmit="return OnSubmitForm();" action="apply3.php">

    <input name="applid" id="applid" value="<?php echo $_SESSION["appid"];?>">
    <input type="hidden" name="birthdate" value="<?php echo $birthdate;?>"><b><?php echo $birthdate;?>
    <input name="passportno" type="text" class="textBoxDashed" id="passportno" value="" size="43" maxlength="14" value="<?php echo $passportno;?>">

input name="sc" type="submit" class="btn btn-primary" id="continue" value="Save and Continue" onclick="document.pressed=this.name">

1 个答案:

答案 0 :(得分:1)

不要使用提取物。还要检查一下是否设置了数据。至于没有获取数据,请尝试public class AddClassDialogFragment extends DialogFragment { public interface AddClassDialogListener { void onDialogPositiveClick(DialogFragment dialog); void onDialogNegativeClick(DialogFragment dialog); } AddClassDialogListener mListener; @Override public void onAttach(Activity activity) { super.onAttach(activity); try { mListener = (AddClassDialogListener) activity; } catch (ClassCastException e) { throw new ClassCastException(activity.toString() + " must implement NoticeDialogListener"); } } @Override public Dialog onCreateDialog(Bundle savedInstanceState) { AlertDialog.Builder builder = new AlertDialog.Builder(getActivity()); final LayoutInflater inflater = getActivity().getLayoutInflater(); builder.setView(inflater.inflate(R.layout.add_class_dialog, null)); builder.setPositiveButton("Add", new DialogInterface.OnClickListener() { @Override public void onClick(DialogInterface dialogInterface, int i) { mListener.onDialogPositiveClick(AddClassDialogFragment.this); } }); builder.setNegativeButton("Cancel", new DialogInterface.OnClickListener() { @Override public void onClick(DialogInterface dialogInterface, int i) { mListener.onDialogNegativeClick(AddClassDialogFragment.this); } }); return builder.create(); } } ,如果您想拉取值并将它们放回输入框,只需使用$_POST['passportno']即可,如果未定义则返回任何内容。

此外,您还需要为输入添加一些保护。 您可以使用<?php echo isset($_POST['passportno'])?$_POST['passportno']:'' ?>

添加保护