Archives for posts tagged ‘PHP’

Upload Progressbar unter Debian mit PHP5

Es gibt einige fertige JavaScripts mit denen man genaue Informationen über Dateiuploads bekommen kann (z.B. Progress Bars):
http://t.wits.sg/misc/jQueryProgressBar/demo.php
http://framework.zend.com/manual/en/zend.progressbar.html
Allerdings funktionieren diese Scripte nicht mit einer Standardinstallation von PHP5, da eine Extension fehlt.
Folgende Fehlermeldung taucht auf:

PHP Fatal error: Call to undefined function uploadprogress_get_info()

Um diese Funktion benutzen zu können muss pear installiert werden.

apt-get install php-pear

Danach muss die Extension [...]

International programmieren mit Zend_Translate

Mit dem im Zend Framework enthaltenen Zend Translate kann man komfortabel international programmieren.
Beispiel mit Zend_Translate_Adapter_Array:
In der de.php werden die deutschen Sprachvariablen gespeichert.

/**
* de.php
*/
return array(
‘message1′ => ‘das ist die erste Nachricht’
);

In der en.php die englischen usw.

/**
* en.php
*/
return array(
‘message1′ => ‘this is the first message’
);

Initialisierung [...]

gif-creator online

Wer eine Seite sucht auf der man kostenlos, mit einer tollen Upload-Funktion und ohne ungewolltes Editieren der Originalbilder ein animiertes Gif erstellen kann, der wird sich für meinen neuen gif-creator interessieren.
Als Upload-Applet benutze ich SWFUpload.

» animiertes gif erstellen

Thumbnails mit PHP & ImageMagick erstellen

Mit PHP (php5-gd) Thumbnails zu erzeugen war für mich immer ein Gefrickel ohne Ende. Mit ImageMagick geht das allerdings ganz leicht.
Mittels shell_exec() und “convert” lassen sich einfach Thumbnails erzeugen:

// erzeugt ein Thumbnail mit 200 Pixel Breit
$ convert -thumbnail 200 foo.png thumb.foo.png

// erzeugt ein Thumbnail mit 200 Pixel Höhe
$ convert -thumbnail x200 foo.png thumb.foo.png

Beispiel:

[...]

Zend Framework unter OpenBSD

Ich habe vorhin eine Webapplikation die das Zend Framework nutzt auf den OpenBSD-Server kopiert und mich gewundert, warum im error-Log immer folgendes Stand:

PHP Fatal error: Uncaught exception
‘Zend_Db_Adapter_Exception’
with message ‘The mysql driver
is not currently installed’
(…)
Zend_Db_Adapter_Pdo_Abstract->_connect()

Es es lag an Pdo. Das Problem konnte man lösen, indem man das Paket php5-pdo_mysql-5.2.3.tgz installiert:

# pkg_add -v php5-pdo_mysql-5.2.3.tgz

und mit einem

# [...]

OpenBSD: phpMyAdmin installieren #2

Es kann sein, dass sich phpMyAdmin nach der Installation komisch verhält: Man kan keine Abfragen machen, keine User anlegen und vor allem dingen: es sieht komisch aus da keine Style-Sheets geladen werden.
Wie schon beschrieben kann das an der session.save_path liegen, ich möchte jetzt genauer darauf eingehen.
Wenn man sich den error.log (/var/www/logs/error_log) des Apache genauer anschaut, [...]

Publicons herunterladen

Ich wollte heute hihn.org mit ein paar schönen publicons verschönern, doch was musste ich sehen? Man kann sich einen Banner zusammenstellen der einem dann in verschiedenen Variationen angeboten wird.
Zusätlich können die Icons nicht manuell heruntergeladen werden.
Das muss doch nicht sein.
Durch die Firefox-Erweiterung Web Developer bin ich schließlich doch noch an das Bild mit seinem Pfad [...]

OpenBSD: phpMyAdmin installieren

Unter OpenBSD kann man phpMyAdmin ganz komfortabel mit pkg_add installieren. Nach erfolgreicher Installation wird folgende Meldung ausgegeben:

Install notice:
The phpMyAdmin has been installed into /var/www/phpMyAdmin

You should point this to the DocumentRoot of your web-server:
# ln -s ../phpMyAdmin /var/www/htdocs/phpMyAdmin
(make sure you use a relative symlink since Apache is chrooted)

You can ensure you have a [...]

OpenBSD: Apache & PHP

Apache mit PHP auf OpenBSD (in diesem Fall 4.2) zum Laufen bringen.
OpenBSD bringt schon einen secure Webserver namnes Apache mit. Man kann ihn gleich nach der Installation starten & testen:

# apachectl start
/usr/sbin/apachectl start: httpd started

PHP kann man entweder aus der Portsammlung kompilieren oder (einfacher & schneller) mit pkg_add installieren:

# pkg_add php5-core

Nachdem diese Operation erfolgreich abgeschlossen [...]

Letzte Id bei AutoIncrement ausgeben

Wenn man bei einem Scrpitaufruf Einträge in mehrere Tabellen machen will und man für nachfolgende Einträge eine Id haben will die mit AutoIncrement erstellt wurde, dann kann man diese mit der PHP-Funktion mysql_insert_id auslesen.
Das Zend Framework-Pendant dazu ist $db->lastInsertId();
Beispiel:

<?php$data = array(    ’vorname’    =>    ”heiko”,    ’nachname’    =>    ”schweizer”);$db->insert(‘rd_accounts’, $data);
echo $db->lastInsertId();?>