File beim Upload verschieben

  • Themenstarter Themenstarter ByeBye 8492
  • Beginndatum Beginndatum
B

ByeBye 8492

Moinsen,

ich bin gerade dabei mir nen MiniCMS zu basteln, dazu will ich auch ne Bildergalerie machen.
Nu bräucht ich nen kleinen Denkanstoß ;)

Also ich habe das Uploadtutorial benutz weil ich mich seit langer Zeit nicht mehr mit Upload beschäftigt hatte:

PHP:
<?php

$path	= "bilder\";
$tempname = $_FILES['file']['tmp_name'];
$name = $_FILES['file']['name']; 
$type = $_FILES['file']['type'];
$size = $_FILES['file']['size']; 

echo $name;
if($type != "image/gif" && $type != "image/jpeg") 
{
$err[] = "nur gif und jpeg Dateien dürfen hochgeladen werden.";
}

if($size > "15000000000") {
$err[] = "Die Datei welche du hochladen willst, ist zu gross!<br>Maximale Dateigrosse beträgt 15 KB!";
} 

$path .= $name;
echo $path;
If(empty($err)) 
{
copy("$tempname", "$path");
echo "Die Datei $name wurde erfolgreich hochgeladen!";
}

else {
foreach($err as $error)
echo "$error<br>";
}
?>

Dieses soll nun Bilder in einen Order raufladen, aber nicht in den Order in dem das Script liegt, sondern in einen ( eine Ebene höher bzw. Tiefer ;)).

Dann soll das Bild keinen "individualen" Namen mehr haben sondern z.B. IMG2004 oder so heißen, das Problem dabei ist, ich werde natürlich mehr als ein Bild hochladen, womit er wieder automatisch hochzählen müsste.

Danach soll das Bild mit der Addresse dazu in die Datenbank eingelesen werden und beim öffnen der jeweiligen Seite wird es dann per Code [ :IMG2003: in das Script übertragen und dann per Funktion zu einem Thumbnail mit Popup verarbeitet].

Aber erstmal muss das mit dem Dynamischen bennenen klappen und der Upload ....
 
Habe deinen COde mal ein wenig modifiziert. So sollte der Upload und das Umbenennen der Bilder funktionieren:
PHP:
<?php 

$path     = "bilder/"; 
$tempname = $_FILES['file']['tmp_name']; 
$name     = $_FILES['file']['name']; 
$type     = $_FILES['file']['type']; 
$size     = $_FILES['file']['size'];

echo $name; 
if ($type != "image/gif" && $type != "image/pjpeg") { //Ich glaube image/pjpeg funktioniert eher
    $err[] = "nur gif und jpeg Dateien dürfen hochgeladen werden."; 
} 

if ($size > 15360) { // $size muss mit einem Integer-Wert, nicht mit einem String verglichen werden! Außerdem sind 15 KB = 15 x 1024 Byte = 15360 Byte!
    $err[] = "Die Datei welche du hochladen willst, ist zu gross!<br>Maximale Dateigrosse beträgt 15 KB!"; 
} 

If (empty($err)) {
    // nachfolgender Code erstellt dir eine recht eindeutige ID nur aus Zahlen (könntest z.B. noch ein "BILD" oder so davor setzen
    $time = explode(" ",microtime());
    $neuer_name = str_replace(".","",$time[0] + $time[1]);
    if ($type == "image/pjpeg") {
        $neuer_name = $neuer_name . ".jpg";
    } elseif ($_FILES['bild_up']['type']=="image/gif") {
        $neuer_name = $neuer_name . ".gif";
    }

    copy($tempname, $path . $neuer_name); 
    echo "Die Datei " . $name . " wurde erfolgreich hochgeladen!"; 
} else { 
    foreach($err as $error) {
        echo $error . "<br>"; 
    }
} 

?>
 
Ist es besser die Thumbs beim Aufrufen des Scripts zu generieren oder sollten die gleich beim Bildupload gemacht werden, wobei ich mit den Thumbs das Problem habe das ich nciht weiß wie ich sie Abspeichen bzw. Generieren kann ...


mmmh das mit dem Rename ist schon ganz gut, allerdings glaub ich das
die Zahl nen hohen Vergesslichkeitswert hat. Weil das Bild soll dann ja in der Datenbank abgelegt werden und dann nacher per

:bildkennung: wieder rausgeladen werden.

Vielleicht sollte ich ne Textdatei machen wo das Script automatisch die Nummer einträgt die es als letztes verwendet hat, wenn das irgendwie möglich ist,
ich denke mal über ein increment dürfet man das hinkriegen.

Naja bleibt noch das Problem mit den Thumbnails
 
Zuletzt bearbeitet von einem Moderator:
Wie gut, dass wir diese Frage noch nie hatten --> :suchen:
Es ist performanter, die Thumbs gleich beim Upload zu erstellen.
1.) File uploaden
2.) Original-Bild im Zielordner speichern
3.) Original-Bid einlesen und resamplen
4.) Thumb abspeichern

Die benötigten Funktionen bzw. Snippets findest Du durch Suchen im Board.

snuu
 
Original geschrieben von snuu
Wie gut, dass wir diese Frage noch nie hatten --> :suchen:
Es ist performanter, die Thumbs gleich beim Upload zu erstellen.
1.) File uploaden
2.) Original-Bild im Zielordner speichern
3.) Original-Bid einlesen und resamplen
4.) Thumb abspeichern

Die benötigten Funktionen bzw. Snippets findest Du durch Suchen im Board.

snuu

Wie gut das ich mir das gleiche auch schon gedacht hab ( nur nicht so gut formuliert :ugly: ) :rolleyes:.

Naja mal sehen vielleicht kriegt man da was zusammengebastelt.

Btw: :suchen: hatte ich auch schon benutzt.
 
mmmh das mit dem Rename ist schon ganz gut, allerdings glaub ich das
die Zahl nen hohen Vergesslichkeitswert hat. Weil das Bild soll dann ja in der Datenbank abgelegt werden und dann nacher per

:bildkennung: wieder rausgeladen werden.
Ja und warum soll die Zahl bzw. der generierte Name der Bilddatei nun von so großer Relevanz sein, dass man ihn sich merken können müsse?
Du schreibst, dass die Verweise zu dem Bild in einer Datenbank gespeichert werden sollen. Demnach ist es doch völlig egal, wie das eigentliche Bild heißt, da du es ja durch eine ID in der DB eindeutig identifizieren kannst (ich glaube das meinst du mit deiner "Bildkennung").
Verstehe insofern also nicht dein Problem.
 
Zurück