在新标签页中打印php数据

时间:2013-01-25 06:15:12

标签: php

我有一个简单的PHP代码:

    //index.php
    $file  = fil1.txt;
    //open file using fopen...
    echo $file;

如果我需要在另一个php文件(e.x. results.php)的新标签页中打印我的文件数据,我该怎么办?

这是我的代码示例:

function elementStart($parser, $name, $attrs) {
global $depth;

echo str_repeat(" ", $depth * 0); 
//echo "<b>$name</b><br>";     

$depth++; 

    foreach ($attrs as $attr => $value) {
        echo str_repeat("&nbsp;", $depth * 0); 

        echo $value.'<br>';
    }
}

function elementStr($parser, $str) {
    if (strlen(trim($str)) > 0) {
        global $depth;

        echo str_repeat("&nbsp;", $depth * 0); 
        echo $str.'<br>'; 
    }
}

function elementEnd($parser, $name) {
    global $depth;

    $depth--;
}

require_once 'connect.php';

if(isset($_POST['submit1']))
{

$db = new database('localhost', 'root', '', 'database1');
$val = mysql_escape_string($_POST['xml1']); 
$db->query("SELECT * FROM xmltable1 WHERE xmlvalue LIKE '%$val%' LIMIT 1");
if($_POST['submit1'])
{



    if($dbase->numRows() == 0){
        echo 'No rows';
    }
    else{
        foreach($db->rows() as $name){
            //echo $name['xmlvalue'];

            define('FOLDER_PATH', 'C:user/folder1/xmld/');
            $full_path = FOLDER_PATH.$name['xmldata'];
            //echo $full_path;
                    $depth = 0;
                    $file  = $full_path;

                    $xml_parser = xml_parser_create();

                    xml_set_element_handler($xml_parser, "elementStart", "elementEnd");
                    xml_set_character_data_handler($xml_parser, "elementStr");


                    while ($data = fgets($fp)) {

                    thexml_parser_free($thexml_parser);

            }

        }
    }

$dbase->disconnect();
}

在我的功能中有回声。当然,我在当前页面中得到回音,但我需要在新标签中回显。

2 个答案:

答案 0 :(得分:1)

将数据传递到另一个窗口(或选项卡)中的另一个PHP文件的唯一方法是使用会话。

在两个PHP文件的顶部,启动会话

session_start();

index.php 中将文件数据分配给会话变量:

$_SESSION['file_data'] = $file_contents;

results.php 中,打印出数据:

echo $_SESSION['file_data'];

答案 1 :(得分:1)

打开一个新的选项卡不是PHP应该做的,你可以尝试用javascripntk实现这样的:

echo <<<EOF
<script>
var win = window.open('about:blank');
var doc = win.document;
doc.write('{$yourdata}');
</script>
EOF;