PHP会话,打印会话信息问题

时间:2012-01-25 16:57:27

标签: php html session upload echo

我写了一些代码来将文件上传到服务器。文件成功后,我将代码转到另一个网页。在这个网页上,我想打印从上一页获得的文件属性,所以我在PHP中使用Sessions。

    //Starts up a new PHP session
    session_start();
    $_SESSION['file']=$_FILES["file"];
    $_SESSION['name']=$_FILES['name'];
    $_SESSION['type']=$_FILES['type'];
    $_SESSION['size']=$_FILES['size'];
    $_SESSION['tmp_name']=$_FILES['tmp_name'];

这是我在第1页的会话。然后,当文件成功时,我将用户发送到page2。

    header( 'Location: page2' ) ;

现在,在第2页,我在.php页面的顶部有这个:

    <?php
    //Starting session
    session_start();
    ?>

然后,让我能够打印出每个变量:

    <?php
    Print_r ($_SESSION['file']);
    ?>

完成此操作后,我将所有信息都混淆成长句。我想控制信息并打印出漂亮而整洁的信息。我究竟做错了什么?我已经研究了很多不同的方法,到目前为止没有任何帮助。

尝试过,也试过打印SESSION,也尝试单独回复每个单词,只打印[Array]。

提前致谢!

5 个答案:

答案 0 :(得分:2)

您正在处理空格分解与HTML分解。

只需将其打印为<pre>,就可以了。

<pre>
<?= print_r ($_SESSION['file']); ?>
</pre>

答案 1 :(得分:2)

print_r()将以一种漂亮的ASCII-Art格式打印出您的信息。 HTML引擎使这个呈现不可读。在浏览器中选择“查看源代码”(Ctl-U),以人类可以理解的形式查看它。

答案 2 :(得分:2)

使用如下所示的二维数组

$_SESSION['upload1']['file']=$_FILES["file"];
$_SESSION['upload1']['name']=$_FILES['name'];
$_SESSION['upload1']['type']=$_FILES['type'];
$_SESSION['upload1']['size']=$_FILES['size'];
$_SESSION['upload1']['tmp_name']=$_FILES['tmp_name'];

on file2.php

   <?php

    print "<pre>";
    print_r($_SESSION['upload1']);
    print "</pre>";

   ?>

答案 3 :(得分:1)

您还可以安装Xdebug,它可以实现非常好的格式化:http://xdebug.org/docs/install

并查看:https://stackoverflow.com/search?q=how+to+install+xdebug如果您在安装xdebug

时遇到任何问题

答案 4 :(得分:1)

使用表格显示数据(或者我错过了什么!?!):

<table>
<tr><td>File Name</td><td><?php echo $_SESSION['name'] ?></td></tr>
<tr><td>File Size</td><td><?php echo $_SESSION['size'] ?></td></tr>
</table>

添加您需要的任何额外信息...