"Header bereits mit TCPDF gesendet" erhaltenPhp

PHP-Programmierer chatten hier
Anonymous
 "Header bereits mit TCPDF gesendet" erhalten

Post by Anonymous »

Bearbeiten 2: Das Problem ist nicht gelöst; Ich habe eine Arbeit gefunden, indem ich zu einer älteren Version der Datei wechselte, die EZPDF anstelle von TCPDF verwendete und sie geändert hat, um den gewünschten Ausdruck zu erhalten (ich weiß nicht, warum nur eine Seite auf der gesamten Website in TCPDF geändert wurde, aber anscheinend ist es passiert). Ich würde immer noch gerne wissen, ob es eine Möglichkeit gibt, dieses Problem zu beheben, da der Code für TCPDF auf dem Server, der PHP 5.2 ausführt, jedoch nicht auf dem neuen Server funktioniert. Es bleibt jedoch keine große Priorität mehr. Nur eine leere Seite. Dies ist ein ganzer Code von einem anderen Server (wir aktualisieren PHP -Versionen auf 5.3) und der Code funktioniert auf dem ersten Server einwandfrei. Senden Sie die PDF -Datei < /p>
< /blockquote>

Nach einigen Debuggen wurde mir festgestellt, dass das Problem ein "bereits gesendeter Fehler",
, auf das ich mehrmals gestoßen bin, während ich diese Site aktualisiert habe. Die meisten dieser Fehler können mit Meta http-äquiv behoben werden, da es sich meistens nur um Seiten-Refhes handelt. TCPDF verwendet jedoch Header, um die PDF -Datei zu erstellen und einen Download zu erzwingen. $ pdf-> output () . Ich habe auch versucht, Request_once ('./ Common/tcpdf/config/lang/eng.php') zu entfernen. Beide haben behobene Probleme für andere Menschen, und ich habe das Thema ausgiebig untersucht. Ich glaube nicht, dass es in diesem Fall funktionieren wird, weil mir bewusst ist, dass die Website bereits zu diesem Zeitpunkt ausgegeben hat. Es sei denn, es gibt natürlich noch eine weitere Lösung. Wenn nicht, muss ich die Seite neu schreiben, ohne TCPDF zu verwenden. Auf dem neuen Server wird die Seite neu geladen, das lange Warten auf die Abfrage erfolgt und dann bricht das Menü tatsächlich durch (Protokoll -Out wird entfernt und eine weitere Taste wird unter dem Rest der Menüleiste verschoben) und nichts anderes passiert.

Code: Select all

case 'I': {
// Send PDF to the standard output
echo "console.log('some log');";
if (ob_get_contents()) {
$this->Error('Some data has already been output, can\'t send PDF file');
}
if (php_sapi_name() != 'cli') {
//We send to a browser
header('Content-Type: application/pdf');
if (headers_sent()) {
$this->Error('Some data has already been output to browser, can\'t send PDF file');
}
header('Cache-Control: public, must-revalidate, max-age=0'); // HTTP/1.1
header('Pragma: public');
header('Expires: Sat, 26 Jul 1997 05:00:00 GMT'); // Date in the past
header('Last-Modified: '.gmdate('D, d M Y H:i:s').' GMT');
header('Content-Length: '.$this->bufferlen);
header('Content-Disposition: inline; filename="'.basename($name).'";');
}
echo $this->getBuffer();
break;
}
case 'D': {
// Download PDF as file
if (ob_get_contents()) {
$this->Error('Some data has already been output, can\'t send PDF file');
}
header('Content-Description: File Transfer');
if (headers_sent()) {

$this->Error('Some data has already been output to browser, can\'t send PDF file');
}
header('Cache-Control: public, must-revalidate, max-age=0'); // HTTP/1.1
header('Pragma: public');
header('Expires: Sat, 26 Jul 1997 05:00:00 GMT'); // Date in the past
header('Last-Modified: '.gmdate('D, d M Y H:i:s').' GMT');
// force download dialog
header('Content-Type: application/force-download');
header('Content-Type: application/octet-stream', false);
header('Content-Type: application/download', false);
header('Content-Type: application/pdf', false);
// use the Content-Disposition header to supply a recommended filename
header('Content-Disposition: attachment; filename="'.basename($name).'";');
header('Content-Transfer-Encoding: binary');
header('Content-Length: '.$this->bufferlen);
echo $this->getBuffer();
break;
}

Quick Reply

Change Text Case: 
   
  • Similar Topics
    Replies
    Views
    Last post