PHP Upload: Datenübergabe an MySQL

Nun können wir unsere Daten an MySQL übertragen. Da wir ja die common.php eingebunden haben, können wir dazu die CodeCharge Funktionen nutzen. Das ganze kommt allerdings zur Sicherheit nur zustande, wenn es noch einen Wert für die Variable $id gibt, da nur damit eine eindeutige Zuordnung zum Datensatz möglich ist, fehlt die ID macht das Script nichts, es wird gar keine Verbindung zum MySQL Server aufgebaut. Den SQL Befehl kann man hier auf abändern und an die eigenen Bedürfnisse anpassen. weiter...

Tags: InternetPHPProgrammierungSnippets

PHP Upload: Mit dem FTP verbinden

Im nächsten Block wird die Verbindung zum FTP Server hergestellt, der Passiv Modus wird aktiviert (wenn kein Passiv Modus vom Server gewünscht wird, dann statt True, False eintragen) und schließlich gecheckt ob eine Verbindung zustande gekommen ist. Tritt hier ein Fehler auf, checkt noch mal alle Parameter, welche ihr am Anfang bei den Variablen festgelegt habt. Dieser Teil ist wieder in der allseits beliebten if Anweisung eingebettet, welche erst checkt wenn der aus dem obigen Formular der Submit Button gedrückt wird.

Auf eine else Zweig verzichte ich, da er dann einfach nix mehr tun muss :-)

if ($submit=="upload") { // Login am FTP Server
$verbindung = ftp_connect($server);
$login = ftp_login($verbindung,$username,$password); // Passiv Mode ?
ftp_pasv($verbindung,True); // Verbindung OK ?
if ((!$verbindung) || (!$login)) {
echo "FTP connection has failed!<br>";
echo "Attempted to connect to server<br>";
die;
} else {
echo "Connected to server.<br>";
}

Sind wir mit dem FTP Verbunden geht’s ans uploaden der Datei (es kann immer nur eine übertragen werden.). weiter...

Tags: InternetPHPProgrammierungSnippets

PHP Upload: Das Upload Script

Der Before Show Update Event

Der Before Show Update Event

Kommen wir nun zur bereits angesprochenen upload.php. Diese genieren wir per Hand. Der Editor ist egal, ich bevorzuge WeaverSlave, da dieser Editor für PHP Arbeiten bestens geeignet ist. Außerdem ist er kostenlos. Der gesamte Upload funktioniert im Script mittels FTP. Das hat einen einfach Grund. Auf vielen Servern ist der SafeMode auf ON gestellt und nicht jeder hat Zugriff auf die php.ini um sich der Funktion zu entledigen. Was auch ein schöner Nebeneffekt ist: die Datei wird mit den Rechten des uploadenden Users versehen und hat somit die normalen Datei und Besitzrechte als wenn man sie regulär per FTP uploaden würde. Erstellt einfach eine neue Datei mit folgendem Inhalt, achtet auf Zeilenumbrüche. weiter...

Tags: SnippetsProgrammierungPHPInternet

PHP Upload: Im CodeCharge

Die Eigenschaften des Label Feldes

Die Eigenschaften des Label Feldes

Es gab Zeiten, da war ich wirklich extrem sauer. Immer wieder die gleichen Probleme. CodeCharge ist zwar eine feine Sache aber in machen Dingen leider etwas begrenzt und stur. So blieb mir auch lange Zeit eine einigermaßen vernünftige Möglichkeit des Dateiuploads verwehrt. Aber mit ein wenig Kenntnis von PHP ist doch recht einfach ein eigenes Modul dafür zu basteln. Ich gebe zu, die Lösung ist nicht perfekt, für meine Bedürfnisse reicht sie aber völlig aus und flexibel ist sie außerdem.

Als erstes müssen wir einige Vorbereitungen im CodeCharge treffen, ohne die unsere Upload Script leider nicht funktioniert. weiter...

Tags: SnippetsProgrammierungPHPInternet

PHP Thumbnails erzeugen: Das Bildformat

Als nächstes checken wir, ob das Bild Hoch oder Querformat hat und schreiben das Ergebnis in die entsprechende Variable. Da wir erst jetzt alle Daten beieinander haben können wir erst jetzt überprüfen, ob überhaupt ein Thumbnail erzeugt werden muss. Ist das nicht der Fall, wird das Bild direkt ohne Umwege ausgegeben. Achtung bei den Headerfunktionen ! Diese funktionieren nur, wenn zuvor kein anderer Header gesendet wurde, bereits ein Leerzeichen, selbst per include reingeholt, macht die Funktion unmöglich. weiter...

Tags: BetriebssystemeInternetPHPProgrammierungSnippets

PHP Thumbnails erzeugen: SQL

Nun wird es Zeit, die Daten aus der Datenbank zu holen und in die Variablen zu schreiben. Sicher könnte man dazu die CodeCharge Funktion nutzen aber ich will einmal meine eigenen verwenden, so habe ich mehr Kontrolle darüber.
mysql_connect($Host, $User, $Password);
mysql_select_db($Database);

$result=mysql_query("SELECT * FROM nc_gallery_pic WHERE pic_id=$pic_id");
$bild_db=mysql_fetch_array($result);
mysql_close();
$bild = getimagesize($_SERVER[DOCUMENT_ROOT].$cat_path.$gallery_path."/".$bild_db[pic_name]);
$bildkomplett = $cat_path.$gallery_path."/".$bild_db[pic_name];
$insertfile_id = imageCreateFromPNG("images/lupe.png");
Wie so oft, wird auch hier mit Handles gearbeitet, wie auch beim vormaligen FTP Script. weiter...

Tags: BetriebssystemeInternetPHPProgrammierungSnippets

PHP Thumbnails erzeugen: Der Anfang

Fangen wir mit dem Script an. Das ganze Script basiert darauf, dass die Bilder anhand einer ID aus einer Datenbank gelesen werden, dort steht der Bildname, in einer anderen Tabelle der Pfad der Gallery und wieder in einer anderen der Pfad zu Galerie-Kategorie. Wie das jeder selbst macht bleibt euch überlassen, ich habe das jedenfalls für unsere Zwecke als am sinnvollsten befunden. Da das Script eine ID benötigt, müssen wir dem Script diese auch mitteilen und abprüfen sie übermittelt wurde:

if (!$pic_id)
die("Keine Ahnung welches Bild gemeint ist !");

Auf diese Weise fragt das Script ob die per URL übermittelte pic_id (zum Beispiel: http://www.test.de/thmp.php?pic_id=3012 ) leer ist, wenn ja, bricht es mit obiger Fehlermeldung ab. weiter...

Tags: InternetPHPProgrammierungSnippets

PHP Thumbnails erzeugen: Vorüberlegungen

Einige Infos zum Server und zum PHP Modul.

Einige Infos zum Server und zum PHP Modul.

Zuerst einmal ein paar Vorüberlegungen zu unserem, eigentlich weniger aufwendigem, Vorhaben. Wir müssen zuerst einmal abklären ob, unser Provider die nötigen PHP Extensions unterstützt, ohne diese Info können wir gleich einpacken oder nur noch hoffen das die benötigten Funktionen auch wirklich zur Verfügung stehen. Am schnellsten bekommt man so etwas mit einer kleinen Funktion mit dem sinnigen Namen phpinfo(), heraus. Schreiben wir also eine kleine Datei info.php mit folgendem Inhalt:

<?
phpinfo();
?>

Diese speichern wir sie auf dem Server und rufen sie im Browser auf. weiter...

Tags: SnippetsProgrammierungPHPInternet