将从函数调用中获取的数据传递给第二个PHP页面

时间:2017-04-27 18:58:15

标签: php html forms

关于我之前的问题的讨论结果:

Passing data to another page after form submit with PHP

我发现我的语法是正确的,但没有按照我需要的方式工作。

我正在尝试将一个变量从我的第一页(带有表单的页面)传递到第二页(基本上只是表示他们提交了表单)。

该变量是用作提交参考编号的唯一ID。我通过在函数中生成随机序列来获取唯一ID。

我的问题是:我可以使用此代码

让我的变量通过两个页面
//(First Page)
$result = "TEST";
header('Location: submittedApplication.php?result='. $result);

我用这段代码抓住它

//(Second Page)
echo $_GET['result'];

哪个可以为我传递一个变量。但我需要的是利用这个功能:

    function gen_uid($l=10)
        { 
        $prefix = "#####";
        $str = ""; 
        date_default_timezone_set('America/New_York');
        $date = date("Y.m.d");

        for ($x=0;$x<$l;$x++)
        $str .= substr(str_shuffle("0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ"), 0, 1);
        echo $prefix . $str . "<br/>" . "Generated On: " . $date; 
        }

我想使用的是

$result = gen_uid();

但它只是将空白传递到第二页,即使我回应它在第一页上测试它工作并给我这样的数据

######NMB32R3MVQ
Generated On: 2017.04.27

作为回顾;第1页是: form.php ,第2页是: submittedApplication.php ,我正在尝试传递 $ result (同时持有字符串我的函数生成)来自第1页 - &gt;第2页。我是网络开发的新手,所以我愿意接受这个工作的任何途径,我只是无法确定它是什么途径。

2 个答案:

答案 0 :(得分:1)

$result提供空值,因为您未从函数gen_uid()返回任何内容,而您只是回显事物。

答案 1 :(得分:0)

您创建的功能不会返回所需的结果而只是显示它。 替换:

echo $prefix . $str . "<br/>" . "Generated On: " . $date;

$final_result = $prefix . $str . "<br/>" . "Generated On: " . $date;
return $final_result; 

这可以解决您的问题。