Archive for the ‘php’ Category

PHP-Datenbankzugriff über PDO

Wednesday, March 3rd, 2010

Wie in einem anderen Posting erklärt ( http://donauweb.at/ebusiness-blog/2009/11/15/sicherheit-security-eines-webshops-verbessern/ ), gibt es bei PHP keine 100% Maßnahmen gegen SQL-Injection mit konventionellem Datenbankzugriff. Nur parametrisierte SQL-Befehle bieten mehr Sicherheit. Es ist daher empfehlenswert, nur noch PDO für Datenbankzugriffe zu verwenden.

Um Datenbankzugriffe mit PDO zu vereinfachen habe ich eine Bibliothek-Klasse geschrieben für den Zugriff auf eine Datenbank mittels PDO. Diese Klasse bietet Funktionalitäten wie bei ADODB. Die wichtigsten sind:

  • pdoGetAll($sql, $data) und pdoGetRow($sql, $data) liefern ein oder mehrere Datensätze als Array zurück.
    Der SQL-Befehl kann Parameter beinhalten, deren Werte in $data mitgeliefert werden.
    zB $sql = “select * from table where id=:id”
  • pdoGetAssoc($sql, $data) holt das gleiche Resultat wie pdoGetAll, jedoch wird die erste Spalte zum Index vom Array. Dadurch ist das Lesen von zB definierten ID-Werten nachher wesentlich einfacher.
  • pdoInsUpd($table, $data, $insert_or_update, $where) erstellt einen INSERT oder UPDATE SQL-Befehl an Hand der übergebenen Parameter und führt diesen Befehl aus.

Die Klasse kann als OpenSource downgeloadet werden.

Warum PDF mit PHP erstellen?

Saturday, January 9th, 2010

Und warum sollte man ein PDF denn mit PHP erstellen? Man hat ja üblicherweise sein PDF aus einer anderen Applikation erstellt und will es nur auf den Webserver hochladen …

Google kann PDF-Dateien lesen und da PDF-Dateien meistens langlebiger sind als Webseiten werden diese PDF-Dateien von Google relativ hoch bewertet. Also gelten für PDF-Dateien die gleichen Regeln wie für HTML-Dateien:

Wichtige Stichwörter öfters verwenden, Links zur Website angeben, gerne auch Deeplinks (denn in Deeplink-URLs kommen die Stichwörter wieder vor).

Weiters will auch der Kunde vielleicht eine allgemeine Info zur Firma, wenn er ein PDF liest. Vielleicht holt er das PDF ja nicht von der Website der betreffenden Firma sondern über einen anderen Link (zB Google).

Aus obenstehenden Gründen macht es Sinn, PDF-Dateien, die man erstellt hat, mit PHP am Server nachzubearbeiten. Dabei werden neue Seiten mit diesen Informationen zugefügt.

PDF erstellen mit PHP

Saturday, January 9th, 2010

Am besten geht das mit TCPDF. TCPDF kann aus HTML ein PDF erstellen und das erleichtert die Sache sehr. Natürlich kann TCPDF nicht alle HTML-Tags und Attribute, aber da man in PHP das HTML selber erstellen kann, ist das leicht zu berücksichtigen.

Wenn zusätzlich PDF-Dateien eingelesen werden müssen, um neue Seiten einzubinden, oder PDF-Dateien zu mergen, dann kann zusätzlich PDI verwendet werden. PDI kann PDF-Dateien einlesen. Das Zusammenspiel von PDI mit TCPDF ist problemlos. Wenn TCPDF inkludiert wird, bevor man ein PDI-Objekt instanziert, dann ist PDI automatisch von TCPDF vererbt.

http://www.tecnick.com/public/code/cp_dpage.php?aiocp_dp=tcpdf

http://www.setasign.de/products/pdf-php-solutions/fpdi/