Text aus Formular in PDF einfügen

So und jetzt noch was:

Damit man nur einmal ein Abmass machen kann, möchte ich jetzt die PDF durchsuchen, ob der Text - Abmass schon vorkommt.

Ich habe mir XPDF installiert und verwende es so:

PHP:
$filepath = substr($_GET['pfad'],1);
$filename = $_SERVER['DOCUMENT_ROOT'].$filepath;
$textfile = substr($filename,0,-4);
$content = shell_exec('C:\\xpdf\\bin64\\pdftotext '.$filename.' -');

Die Pfade stimmen aber ich kriege die Datei nicht konvertiert. Im Errorlog steht nur die cmd Ausgabe von pdf2text.

Kann mir wer nen Tip geben?
 
Und was steht in der Ausgabe?

Versuch mal nur "exec" und die Paramter welche du aus der URL bekommst, vorher mit "escapeshellcmd()" maskieren.

Wenn das noch nicht geht, die Pfde mal ausgeben lassen und hier Posten.
 
Zuletzt bearbeitet:
Die Ausgabe ist die hier:
Code:
pdftotext version 3.03
Copyright 1996-2011 Glyph & Cog, LLC
Usage: pdftotext [options] <PDF-file> [<text-file>]
  -f <int>          : first page to convert
  -l <int>          : last page to convert
  -layout           : maintain original physical layout
  -fixed <fp>       : assume fixed-pitch (or tabular) text
  -raw              : keep strings in content stream order
  -htmlmeta         : generate a simple HTML file, including the meta information
  -enc <string>     : output text encoding name
  -eol <string>     : output end-of-line convention (unix, dos, or mac)
  -nopgbrk          : don't insert page breaks between pages
  -opw <string>     : owner password (for encrypted files)
  -upw <string>     : user password (for encrypted files)
  -q                : don't print any messages or errors
  -cfg <string>     : configuration file to use in place of .xpdfrc
  -v                : print copyright and version info
  -h                : print usage information
  -help             : print usage information
  --help            : print usage information
  -?                : print usage information

Die Pfade stimmen ja wie bereits erwähnt. Ich versuchs mal mit exec und escapeshellcmd().


So das hier sind die Pfade:

PHP:
$filename : C:/xampp/xampp/htdocs/Masslisten/Esche Braun/1 KL/KD/40 mm/61681.pdf
$textname:  C:/xampp/xampp/htdocs/Masslisten/Esche Braun/1 KL/KD/40 mm/61681.txt
 
Zuletzt bearbeitet:
Ich kenn dieses Programm zwar nicht, aber es steht doch hier in der Hilfe:
Code:
Usage: pdftotext [options] <PDF-file> [<text-file>]

Die Hilfe wird immer dann angezeigt wenn die Parameter welches dieses Programm braucht nicht richtig angegeben werden.

Ich würde mal eher tippen das du noch das Text-File angeben musst und mind. eine Option.
 
Das Textfile habe ich jetzt auch angegeben, hat aber keine Änderung bewirkt:

PHP:
$content = exec('C:\\xpdf\\bin64\\pdftotext '.escapeshellcmd($filename).' '.escapeshellcmd($textfile.'.txt').' -');
 
Hast dir mal die Doku von dem Programm richtig durchgelesen? Braucht es nicht noch eine "Option" damit es weiß wie und was konvertiert werden soll? Für was der Bindestrich am Ende nach ".txt"?
 
Die Optionen sind optional, der Bindestrich am Ende soll dafür sein, damit man die exec Zeile auch ausgeben kann, funktioniert bei mir aber nicht wirklich.

Das lustige daran: wenn ich pdf2text die Dateinamen manuell übergebe, funktioniert alles, mit PHP funktioniert es nicht.
 
Dann versuchs doch mal ohne das maskieren. prüfe ob die Pfade genau gleich geschrieben sind als wenn es direkt eingibst.
 
Zurück