File-Upload: Feldernamen

Fragen zu allen Themen rund ums Programmieren außerhalb von phpBB können hier gestellt werden - auch zu anderen Programmiersprachen oder Software wie Webservern und Editoren.
Antworten
Benutzeravatar
SoulReaver1989
Mitglied
Beiträge: 204
Registriert: 25.04.2004 13:24
Wohnort: Freiberg am Neckar
Kontaktdaten:

File-Upload: Feldernamen

Beitrag von SoulReaver1989 »

Hi,

also ich hab folgendes Problem. PHP erstellt mir ein Formular wie gewünscht mit den Filenames, also z.B. :

Code: Alles auswählen

<form action="xyz.php" method="POST" enctype="multipart/formdata">
<input name="312412_213413_214424" type="file">
<input name="124141_152151_214142" type="file">
<input name="122321_685636_907321" type="file">
<input name="312342_342421_089785" type="file">
</form>
Was soll PHP nun machen? Nun, PHP soll anhand des Feldnames z.B. "312412_213413_214424", jetzt seine Datei benennen.
Dummerweise habe ich nirgendwo gefunden wie ich da dran kommen könnte. Ich bin mir sicher das es sehr einfach ist, ich habs aber bisher einfach net Gefunden!

Ich hoff mal ihr wissts ;)
Langeweile?
Schick Feuer an die 112 und sofort stehen 20 lustige Leute mit roten Partyhüten vor deiner Tür!
Benutzeravatar
Blutgerinsel
Mitglied
Beiträge: 1801
Registriert: 19.07.2004 18:53
Wohnort: Landkreis Ulm
Kontaktdaten:

Beitrag von Blutgerinsel »

Ereuge folgenden Code bei xyz.php

Code: Alles auswählen

echo "<pre>";
print_r($_FILES);
echo "</pre>";
Sicher das du einen derartigen langen Namen haben willst?

Zusatzinfos -> http://www.php.net/manual/de/features.file-upload.php
Benutzeravatar
SoulReaver1989
Mitglied
Beiträge: 204
Registriert: 25.04.2004 13:24
Wohnort: Freiberg am Neckar
Kontaktdaten:

Beitrag von SoulReaver1989 »

Und wie komm ich nu dan den Key?

Code: Alles auswählen

foreach($_FILES as $key)
{
echo "$key";
}
ja wohl eher net?
----------------------------------

Okay... also ich geb ja zu dass ich zuwenig lese ;)
Ich denke mit array_keys() gehts!

Danke für deine Unterstützung!!!!

Aber noch ne kurze Frage:
Ist es unvorteilhaft einen solchen Namen zunutzen !?
Ich meine das System verwaltet die alleine, für mich machts keinen
Unterschied...
phpbb benennt Dateien ja auch so: 94186956040ada7b346c22.jpg
Langeweile?
Schick Feuer an die 112 und sofort stehen 20 lustige Leute mit roten Partyhüten vor deiner Tür!
Benutzeravatar
Blutgerinsel
Mitglied
Beiträge: 1801
Registriert: 19.07.2004 18:53
Wohnort: Landkreis Ulm
Kontaktdaten:

Beitrag von Blutgerinsel »

SoulReaver1989 hat geschrieben:Und wie komm ich nu dan den Key?

Code: Alles auswählen

foreach($_FILES as $key)
{
echo "$key";
}
ja wohl eher net?
----------------------------------
Ich habe lediglich gezeigt damit, wie die Array Elemente heissen.
Das man ein Array durchlaufen kann und dies in diesem Fall auch sinnvoll ist hast du ja erkannt :wink:
Aber noch ne kurze Frage:
Ist es unvorteilhaft einen solchen Namen zunutzen !?
Ich meine das System verwaltet die alleine, für mich machts keinen
Unterschied...
Warum sollte man einen solchen Namen überhaupt nutzen?
Das würde Sinn machen wenn das Script zufällige Feldnamen verwendet
phpbb benennt Dateien ja auch so: 94186956040ada7b346c22.jpg
Ja, das ist aber der temporäre Dateinamen welcher beim Apache i.d.R. bei /tmp landet. Diverse Hoster säubern aber Gelegentlich dieses Dir -> sagt schon der Name temporär.

Daher verschiebt man ja auch die Downloads....Ganz entgegen diverser Tutorials ist die Verwendung von Copy -> /dev/null

Weil PHP kennt http://de3.php.net/manual/de/function.m ... d-file.php

Die Quelle nachdem Upload ist $_FILES['dasfeld']['tmp_name']
Und mit dem zweiten Parameter kann der Zielpfad inklusive des gewünschten Dateinamens festgelegt werden.....
Den Client Filenamen ist sogar auch in $_FILES enthalten. Daneben ist in diesem Array noch der Fehlercode.....
Antworten

Zurück zu „Coding & Technik“