kostenloser Webspace werbefrei: lima-city


[PHP] Frage zu Bilderupload

lima-cityForumProgrammiersprachenPHP, MySQL & .htaccess

  1. Autor dieses Themas

    s***h

    Hi,
    also ich hab hier eine Bilddatei in der $bild
    und mache folgendes:

    $ziel = "blub/ordner/";

    $target = $ziel.$bildname;

    copy($bild,$target);

    Wie kann ich jetzt an den Namen des Bildes (also $bildname) kommen?
  2. Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!

    lima-city: Gratis werbefreier Webspace für deine eigene Homepage

  3. e********n

    Hi,
    Wenn ich dich richtig verstanden habe sucht du diese Funktion:

    http://www.php.net/basename


    Wenn du den Namen der Datei haben willst die gerade geladen ist (wobei ich nicht glaube das du das suchst) benutz am besten folgendes:
    $_SERVER['PHP_SELF'];

    mfg, exphorizon

  4. Hi,
    also ich hab hier eine Bilddatei in der $bild
    und mache folgendes:

    $ziel = "blub/ordner/";

    $target = $ziel.$bildname;

    copy($bild,$target);

    Wie kann ich jetzt an den Namen des Bildes (also $bildname) kommen?


    Zweierlei: Wo wird $bildname definiert? Wieso verwendest du nicht move_uploaded_file()?

    Dann würde ein Script nämlich etwa so aussehen:

    <?php
    $dest = "blub/ordner/";
    $filename = "beispielblablabla"; //oder eben uniqid("") oder ähnliches
    
    $file = $_FILES['upload'];
    $pathinfo = pathinfo($file['name']);
    $filename = $filename.".".$pathinfo['extension'];
    
    move_uploaded_file($file['tmp_name'], $dest.$filename);
    ?>


    Du brauchst dazu natürlich noch das Formular mit dem Dateifeld "upload".


    gruß
    ferdinand24



    Beitrag geaendert: 22.4.2007 22:45:35 von ferdinand24
  5. Autor dieses Themas

    s***h

    Ja, ich wollte ja wissen, wie ich die Variable $bildname rausfinde ;)

    Ich hab nen Upload:
    <form...>
    <input name='psp_image' type='file' id='psp_image' size='37' class='button'>
    ...
    </form>

    und hier nehme ich jetzt deinen Vorschlag (an obigen Code angepasst):

    $dest = 'images/banner/';
    $filename = 'beispielblablabla'; //oder eben uniqid('') oder ähnliches
    
    $file = $_FILES['psp_image'];
    $pathinfo = pathinfo($file['name']);
    $filename = $filename.'.'.$pathinfo['extension'];
    
    move_uploaded_file($file['tmp_name'], $dest.$filename);


    Aber wie komme ich jetzt auf die Variable $filename??
    Edit: Der Inhalt der Variable soll natürlich den gleichen Namen wie vor dem Upload haben ;)

    Beitrag geaendert: 23.4.2007 15:13:27 von sesch

  6. Ja, ich wollte ja wissen, wie ich die Variable $bildname rausfinde ;)

    Ich hab nen Upload:
    <form...>
    <input name='psp_image' type='file' id='psp_image' size='37' class='button'>
    ...
    </form>

    und hier nehme ich jetzt deinen Vorschlag (an obigen Code angepasst):

    $dest = 'images/banner/';
    $filename = 'beispielblablabla'; //oder eben uniqid('') oder ähnliches
    
    $file = $_FILES['psp_image'];
    $pathinfo = pathinfo($file['name']);
    $filename = $filename.'.'.$pathinfo['extension'];
    
    move_uploaded_file($file['tmp_name'], $dest.$filename);


    Aber wie komme ich jetzt auf die Variable $filename??
    Edit: Der Inhalt der Variable soll natürlich den gleichen Namen wie vor dem Upload haben ;)

    Beitrag geaendert: 23.4.2007 15:13:27 von sesch


    Achso, sag das doch gleich ;)

    $pathinfo['basename']; liefert den Dateinamen ;)

    Also:
    <?php
    $dest = 'images/banner/';
    
    $file = $_FILES['psp_image'];
    $pathinfo = pathinfo($file['name']);
    
    move_uploaded_file($file['tmp_name'], $dest.$pathinfo['basename']); 
    ?>


    Allerdings empfehle ich dir nicht, den Dateinamen vom Client identisch zu übernehmen. Wenn nämlich eine Datei mit dem gleichen Namen hochgeladen wird, wird die alte überschrieben. Du könntest allerdings noch etwas davor oder dahinterhängen, z.B. uniqid("");, dann ist ausgeschlossen, dass eine Datei überschrieben wird ;)

    gruß
    ferdinand24

    Beitrag geaendert: 23.4.2007 17:46:55 von ferdinand24
  7. Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!

    lima-city: Gratis werbefreier Webspace für deine eigene Homepage

Dir gefällt dieses Thema?

Über lima-city

Login zum Webhosting ohne Werbung!