Installation - Warum wird kein PDF-Dokument erzeugt?: Unterschied zwischen den Versionen

Aus FjwLay
Zur Navigation springen Zur Suche springen
 
(46 dazwischenliegende Versionen von 3 Benutzern werden nicht angezeigt)
Zeile 1: Zeile 1:
[[Kategorie:FAQ]]
[[Kategorie:FAQ]]
[[Kategorie:Installation]]
[[Kategorie:Installation]]
[[Kategorie:RedHat]]
zu:
zu:
* [[Hauptseite]]
* [[Hauptseite]]
* [[FAQ]]
* [[FAQ]]
<br>
= Das Programm-Paket ''php-fpdf'' =
= Das Programm-Paket ''php-fpdf'' =
In der Datei '''Cert.php''' wird das PHP-Modul '''fpdf.php''' geladen.<br>
In der Datei '''Cert.php''' wird das PHP-Modul '''fpdf.php''' geladen.<br>
Es gehört zum Programm-Paket '''php-fpdf''':
Es gehört zum Programm-Paket '''php-fpdf''':
<pre>  require("fpdf.php");</pre>
<pre>  require("fpdf.php");</pre>
Dabei wird erwartet, dass das PHP-Modul im gleichen Verzeichnis wie '''Cert.php''' liegt
Dabei wird erwartet, dass das PHP-Modul im gleichen Verzeichnis wie '''Cert.php''' liegt<br>
oder gemäß dem '''include_path''' im Verzeichnis '''/usr/share/php/fpdf'''.<br>
oder gemäß dem '''include_path''' im Verzeichnis '''/usr/share/php/fpdf''' installiert ist.<br>
Falls dies nicht so ist, wird keine Urkunde generiert. Es gibt drei Möglichkeiten, Abhilfe zu schaffen:
Wenn nicht, wird keine Urkunde generiert. Es gibt vier Möglichkeiten, Abhilfe zu schaffen:
  * Installation aus der Distribution
  * [[Installation - Warum wird kein PDF-Dokument erzeugt?#Installation aus der Distribution|Installation aus der Distribution]]
  * Kopieren oder Verlinken des bereits vorhandene Pakets  
  * [[Installation - Warum wird kein PDF-Dokument erzeugt?#Kopieren oder Verlinken des bereits vorhandenen Pakets|Kopieren oder Verlinken des bereits vorhandenen Pakets]]
  * Anpassung der require()-Anweisung
* [[Installation - Warum wird kein PDF-Dokument erzeugt?#Link auf fpdf.php ins Projektverzeichnis legen|Link auf fpdf.php ins Projektverzeichnis legen]]
  * [[Installation - Warum wird kein PDF-Dokument erzeugt?#Anpassung der require()-Anweisung|Anpassung der require()-Anweisung]]
 
== Installation aus der Distribution ==
== Installation aus der Distribution ==
<p>Wenn man das PHP-Paket '''php-fpdf''' aus der Distribution installiert, sollte es in '''/usr/share/php/'''<br>
zu liegen kommen. Über den '''include_path = ".:/usr/share/php"''' wird dann '''fpdf.php''' gefunden.</p>
<p>Die Installation erfolgt über das Kommando:</p>
'''Debian oder Ubuntu'''
<pre>  $ apt-get -y install php-fpdf</pre>
''' RedHat'''
<pre>  $ dnf -y install php-fpdf</pre>
<p>Danach befinden sich die folgenden zwei zusätzlichen Einträge in '''/usr/share/php''' vorhanden:
<pre>
    drwxr-xr-x    fpdf
    lrwxrwxxrwx    fpdf.php -> fpdf/fpdf.php
</pre>
== Kopieren oder Verlinken des bereits vorhandenen Pakets ==
<p>Falls das Paket nicht aus der Distribution geladen werden kann, aber Schreibrechte auf das Verzeichnis<br>
'''/usr/share/php''' existieren, kann ein bereits vorhandenes '''php-fpdf'''-Paket verlinkt werden:
<pre>
    $ cd /usr/share/php
    $ ln -sf <path_to_fpdf> fpdf
    $ ln -sf fpdf/fpdf.php fpdf.php
</pre>


== Links auf das bereits vorhandene Paket ==  
== Link auf fpdf.php ins Projektverzeichnis legen ==
<p>Wenn man Links erzeugen kann, hilft es, die Datei '''fpdf.php''' in das gleiche<br>
Verzeichnis zu verlinken, in dem *Cert.php* liegt:
</p>
<pre>
    $ cd <projektverzeichnis>
    $ ln -sf <path-to_fpdf>/fpdf.php fpdf.php
</pre>


== Anpassung der require()-Anweisung ==
== Anpassung der require()-Anweisung ==
<p>Falls keine Möglichkeit besteht, die o. g. Links zu erstellen (Zugriff via ftp/sftp),<br>
kann die Pfadangabe auch in der Datei '''Cert.php''' in der request()-Anweisung gesetzt<br>
werden (Beispiel):</p>
<pre>
    request("../../fpdf.php");
</pre>

Aktuelle Version vom 17. April 2023, 22:30 Uhr


zu:


Das Programm-Paket php-fpdf

In der Datei Cert.php wird das PHP-Modul fpdf.php geladen.
Es gehört zum Programm-Paket php-fpdf:

   require("fpdf.php");

Dabei wird erwartet, dass das PHP-Modul im gleichen Verzeichnis wie Cert.php liegt
oder gemäß dem include_path im Verzeichnis /usr/share/php/fpdf installiert ist.
Wenn nicht, wird keine Urkunde generiert. Es gibt vier Möglichkeiten, Abhilfe zu schaffen:

* Installation aus der Distribution
* Kopieren oder Verlinken des bereits vorhandenen Pakets 
* Link auf fpdf.php ins Projektverzeichnis legen
* Anpassung der require()-Anweisung

Installation aus der Distribution

Wenn man das PHP-Paket php-fpdf aus der Distribution installiert, sollte es in /usr/share/php/
zu liegen kommen. Über den include_path = ".:/usr/share/php" wird dann fpdf.php gefunden.

Die Installation erfolgt über das Kommando:

Debian oder Ubuntu

   $ apt-get -y install php-fpdf

RedHat

   $ dnf -y install php-fpdf

Danach befinden sich die folgenden zwei zusätzlichen Einträge in /usr/share/php vorhanden:

    drwxr-xr-x     fpdf
    lrwxrwxxrwx    fpdf.php -> fpdf/fpdf.php

Kopieren oder Verlinken des bereits vorhandenen Pakets

Falls das Paket nicht aus der Distribution geladen werden kann, aber Schreibrechte auf das Verzeichnis
/usr/share/php existieren, kann ein bereits vorhandenes php-fpdf-Paket verlinkt werden:

    $ cd /usr/share/php
    $ ln -sf <path_to_fpdf> fpdf
    $ ln -sf fpdf/fpdf.php fpdf.php

Link auf fpdf.php ins Projektverzeichnis legen

Wenn man Links erzeugen kann, hilft es, die Datei fpdf.php in das gleiche
Verzeichnis zu verlinken, in dem *Cert.php* liegt:

    $ cd <projektverzeichnis>
    $ ln -sf <path-to_fpdf>/fpdf.php fpdf.php

Anpassung der require()-Anweisung

Falls keine Möglichkeit besteht, die o. g. Links zu erstellen (Zugriff via ftp/sftp),
kann die Pfadangabe auch in der Datei Cert.php in der request()-Anweisung gesetzt
werden (Beispiel):

    request("../../fpdf.php");