Bilder Upload

danza

Erfahrenes Mitglied
Hi Tutorial User,

Ich möchte den registrierten usern auf meiner Webseite den Upload von Bildern max 200kb ermöglichen. Habe MySQL, PHP usw. zur Verfügung. Nun ist die Frage wie ich das realisiere, sollte man das Bild in ner MySQL Datenbank speichern oder nur die Adresse in der Datenbank. Wenn man nur die Adresse speichert, wie kann man dann das Bild hochladen lassen?
 
PHP:
<?php
if (is_uploaded_file($_FILES['myfile']) && $_FILES['myfile']['size'] > 204800) {
    // Datei zu groß
} else {
    $name = md5(microtime());  // hash value oder timestamp oder userid-timestamp-kobination oder whatever
    $directory = '/pfad/zum/upload/verzeichnis/';
    $destination = "{$directory}{$name}";
    move_uploaded_file($_FILES['myfile']['tmp_name'],
        $destination);

    mysql_query("
        INSERT INTO `table` (
            `filename`
        ) VALUES (
            '{$name}'
        );");
}
Entweder du verwendest eine organisierte Verzeichnisstruktur
Code:
/uploads
    /user-1
        - file1
        - file2
        - file2(2)
        - file3
    /user-2
    /user-3
        - ...
Oder hashst die Dateinamen oder machst sie anderweitig einzigartig und speicherst sie anschließend irgendwie mit in der Datenbank, damit du dann über einen oder mehrere Werte den Pfad zur Datei rekonstruieren kannst.

Das Speichern in der Datenbank als Blob kann ich übrigens aus Performance und Lastgründen nicht empfehlen.
 
OK danke für die schnelle Antwort werde mal so ein bischen herum testen. Wollte ja nur Grob wissen wie es geht ;)
 
Zurück