如何使用 php readfile 代码在新标签页中打开 PDF 文件(所见即所得)

How to use php readfile code to open PDF file in new tab (wysiwyg)

我正在使用以下代码从数据库中打开 PDF 文档。我的问题是 PDF 文档在当前选项卡中打开,但我希望它在新选项卡中打开。

$query = "SELECT name, type, size, content FROM files WHERE id = '$id'";

$result = mysql_query($query) or die('Error, query failed');
list($name, $type, $size, $content) = mysql_fetch_array($result);

header("Content-length: $size");
header("Content-type: $type");
header("Content-Disposition: inline; filename=$name");

echo $content;

我正在使用 redactor wysiwyg 添加 PDF。如果您需要更多信息,请告诉我,谢谢。

解决了我在新标签页中打开 PDF 的问题。我们无法使用 php 代码打开新标签页。只能通过在 redactor.js

中添加 "target="_blank" 来实现

以下是编辑器所见即所得的部分代码。您可以在代码中找到 "target="_blank"。

fileUploadCallback: function(json)
{
    var data = $.parseJSON(json);

    var text = $('#redactor_filename').val();
    if (text == '') text = data.filename;
    var link = '<a href="' + data.filelink + '" target="_blank">' + text + '</a>';

    // chrome fix
    if ($.browser.webkit && !!window.chrome) link = link + '&nbsp;'; 

    if ($.browser.msie) 
    {
        if (text != '') $(this.doc.getElementById('span' + this.spanid)).replaceWith(a);
    else $(this.doc.getElementById('span' + this.spanid)).after(link).remove();
        this.syncCode();
    }
    else this.execCommand('inserthtml', link);

    // file upload callback
    if (typeof this.opts.fileUploadCallback == 'function') 
    {
        this.opts.fileUploadCallback(this, data);
    }

    this.modalClose();
},  

有关更多信息,请从 redactor WYSIWYG 网站获取代码。