Signatur
Beschreibung
fdf_set_status() schreibt einen Statustext in den speziellen /STATUS-Schlüssel eines FDF-Dokuments (Forms Data Format). Dieser Schlüssel wird von Adobe Acrobat ausgewertet, wenn das FDF-Dokument als Antwort auf eine Formularübermittlung zurückgeschickt wird – Acrobat zeigt den Statustext dann dem Benutzer in einem Dialog an.
FDF ist ein Dateiformat, das ausschließlich die Formulardaten eines PDF-Dokuments enthält, ohne das vollständige PDF übertragen zu müssen. Mit fdf_set_status() lassen sich serverseitige Rückmeldungen direkt in dieses Datenpaket einbetten, sodass ein PDF-Formular nach dem Absenden eine Bestätigung oder Fehlermeldung anzeigen kann.
Die Funktion wird typischerweise zusammen mit fdf_create() oder fdf_open() verwendet, um ein FDF-Dokument zu erstellen bzw. zu öffnen, bevor der Status gesetzt und das Dokument mit fdf_save() gespeichert oder direkt ausgegeben wird.
Hinweis: Die FDF-Extension ist seit PHP 7.0 nicht mehr im offiziellen PHP-Kern enthalten und gilt als veraltet. Für moderne Projekte sollten PDF-Bibliotheken wie FPDF, TCPDF oder die pdflib-Extension in Betracht gezogen werden.
Parameter
| Name | Typ | Default | Beschreibung |
|---|---|---|---|
| $fdf_document Pflicht | resource | Eine gültige FDF-Dokumentressource, die zuvor mit fdf_create() oder fdf_open() erzeugt wurde. |
|
| $status Pflicht | string | Der Statustext, der im /STATUS-Schlüssel des FDF-Dokuments gespeichert werden soll. Acrobat zeigt diesen Text dem Benutzer nach dem Absenden des Formulars an. |
Rückgabewert
true bei Erfolg zurück, false bei einem Fehler.Beispiele
Statusmeldung in ein FDF-Dokument einbetten
<?php
// FDF-Dokument erstellen
$fdf = fdf_create();
// Feldwert setzen
fdf_set_value($fdf, 'Vorname', 'Max');
fdf_set_value($fdf, 'Nachname', 'Mustermann');
// Statustext setzen, der in Acrobat angezeigt wird
fdf_set_status($fdf, 'Ihre Daten wurden erfolgreich übermittelt. Vielen Dank!');
// Korrekte HTTP-Header für FDF senden
header('Content-Type: application/vnd.fdf');
// FDF direkt ausgeben
fdf_save($fdf);
// Ressource freigeben
fdf_close($fdf);
?>
FDF-Fehlerantwort mit Statusmeldung
<?php
// Formulardaten validieren
$email = $_POST['email'] ?? '';
$fdf = fdf_create();
if (!filter_var($email, FILTER_VALIDATE_EMAIL)) {
// Fehler-Status setzen
fdf_set_status($fdf, 'Fehler: Bitte geben Sie eine gültige E-Mail-Adresse ein.');
} else {
// Daten verarbeiten ...
fdf_set_value($fdf, 'email', $email);
fdf_set_status($fdf, 'Registrierung erfolgreich abgeschlossen.');
}
header('Content-Type: application/vnd.fdf');
fdf_save($fdf);
fdf_close($fdf);
?>
// Wichtig · Fallstricke
Deprecation-Hinweis: Die FDF-Extension (ext/fdf) wurde in PHP 5 als veraltet markiert und ist seit PHP 7.0 nicht mehr Bestandteil des offiziellen PHP-Kerns. Sie steht nur noch über PECL oder als separat kompiliertes Modul zur Verfügung. Für neue Projekte sollte auf moderne PDF-Bibliotheken umgestiegen werden.
Der /STATUS-Schlüssel wird nur von Adobe Acrobat Reader interpretiert. Andere PDF-Viewer unterstützen FDF möglicherweise nicht oder werten den Statusschlüssel nicht aus.