将输入数据回显到另一个页面php

时间:2012-08-31 05:46:15

标签: php forms submit

我在显示从一个页面到另一个页面的输入数据时遇到了问题

我点击提交按钮

时尝试转移它

这是我的代码,我尝试传输数据

function cart() {
    $total = 0;
    foreach($_SESSION as $name => $value) {
        if ($value>0) {
            if (substr($name, 0, 5) == 'cart_'){
                $id = substr($name, 5, (strlen($name)-5));
                $get = mysql_query('SELECT id, name, price FROM menu WHERE id=' .mysql_real_escape_string((int)$id));
                while ($get_row = mysql_fetch_assoc($get)){
                    $sub = $get_row['price'] * $value;
                    echo $get_row['name'].' x '.$value.' @ $'.number_format($get_row['price'], 2).' = $'.number_format($sub, 2).' <a href="cart.php?remove='.$id.'">[-]</a> <a href="cart.php?add='.$id.'">[+]</a> <a href="cart.php?delete='.$id.'">[Delete]</a><br />' ;
                }
            }
            $total += $sub;
        }
    }
    if ($total == 0){
        echo "Your Cart Is Empty";
    }
    else {
        echo "<p>Total : $".number_format($total, 2).'</p>';


        <p>
        <form action="bill.php" method="post">
        <?php paypal_items(); ?>
        <input type="submit" value="submit" />
        </form>
        </p>            
    }
}

我尝试将此行显示到另一页

 echo $get_row['name'].' x '.$value.' @ $'.number_format($get_row['price'], 2).' = $'.number_format($sub, 2).' <a href="cart.php?remove='.$id.'">[-]</a> <a href="cart.php?add='.$id.'">[+]</a> <a href="cart.php?delete='.$id.'">[Delete]</a><br />' ;

我只是尝试这个代码而且我收到了错误

bill.php

<?php
echo $get_row['name'].' x '.$value.' @ $'.number_format($get_row['price'], 2).' = $'.number_format($sub, 2);
?>

错误

Notice: Undefined variable: get_row in C:\xampp\htdocs\shopping\bill.php on line 2

Notice: Undefined variable: value in C:\xampp\htdocs\shopping\bill.php on line 2

Notice: Undefined variable: get_row in C:\xampp\htdocs\shopping\bill.php on line 2

Notice: Undefined variable: sub in C:\xampp\htdocs\shopping\bill.php on line 2
x @ $0.00 = $0.00

任何人都知道怎么做???

我只是这个领域的新手...

感谢

5 个答案:

答案 0 :(得分:0)

然后,如果您正在使用会话,请将该字符串保存到会话中。

答案 1 :(得分:0)

如果你想将一个变量从一个页面带到另一个页面,那么使用会话变量

first.php

session_start();
$_SESSION['variable_name'] = $whatever;

second.php

检索以下数据

session_start();
echo $_SESSION['variable_name']; // return value of $whatever

并且在您的情况下,您在 bill.php 上发布数据,因此通过POST变量获取bill.php上的数据

print_r($_POST) // return all data

答案 2 :(得分:0)

如果要在其他页面中显示值,请使用$_POST,$_GET$_SESSION,而不是直接使用变量名称。

阅读本文以获得更好的unserstand:http://mrarrowhead.com/index.php?page=php_passing_variables.php

答案 3 :(得分:0)

session_start();添加到第一个php文件的第一行。然后添加

$target_data = $get_row['name'].' x '.$value.' @ $'.number_format($get_row['price'], 2).' = $'.number_format($sub, 2).' <a href="cart.php?remove='.$id.'">[-]</a> <a href="cart.php?add='.$id.'">[+]</a> <a href="cart.php?delete='.$id.'">[Delete]</a><br />' ;
$_SESSION['target_data'] = $target_data;
回声之前

然后在你的第二个php文件中,再次将session_start();添加到第一行,你可以回显像;

这样的值
echo $_SESSION['target_data'];

答案 4 :(得分:0)

如果您尝试保存会话变量以允许它们在页面之间移动,则需要在完成后调用session_write_close()。

<?php
session_start();
$_SESSION['foo'] = 'bar';
session_write_close();
?>

这样做可以让您访问设置页面之外的会话数据。

此处提供更多信息:http://us2.php.net/manual/en/function.session-write-close.php