【问题标题】:Passing variables across a multi page form in php在php中跨多页表单传递变量
【发布时间】:2009-08-14 02:55:34
【问题描述】:

请原谅我是新手。我有一个多页表单,我在其中使用 $_SESSIONS 来记录变量。

<?php
session_start();
foreach ( $_POST as $key=>$value ) {
    if ( $key!="submit" ) {
        $value= htmlentities(stripslashes(strip_tags($value)));
        $_SESSION[$key] = $value;
    }
}`

我实际上有两个问题。当我看到我制作的打印出变量的 checkform.php 时,即使上面列出的代码在每一页上,第 1 页的变量也不会显示。我正在使用 Firefox Web 开发人员工具禁用 cookie,在 php ini 中,我将 session.use_trans_sid 更改为 1 以将其打开。对于我的 checkform.php 上的最后一页,我 print_r($_POST) 的最后一页工作正常。为什么第 1 页的变量不显示?我错过了什么?

第二个问题是当我 print_r($_SESSION) 时,一些字段,特别是复选框数组,打印为

[payment] => Array
[agerange] => Array
[meals] => Array
[mealtypes] => Array

我错过了什么?

【问题讨论】:

    标签: php forms session


    【解决方案1】:

    在您的表单标签中,您的方法是使用“获取”还是“发布”?这是我可以看到 $_POST 数组在第 1 页上为空的唯一原因...

    【讨论】:

      【解决方案2】:

      我不确定您的第一个问题。您可以考虑使用 POST 标签将信息传递到第二个验证页面。

      我可以回答您的第二个问题:它只是打印一个数组,因为您要求它这样做。您需要使用 foreach() 来回显数组的每一部分。

      没有愚蠢的问题。

      【讨论】:

        猜你喜欢
        • 2021-11-07
        • 1970-01-01
        • 1970-01-01
        • 2015-07-03
        • 2013-06-02
        • 2015-05-28
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多