• Apfeltalk ändert einen Teil seiner Allgemeinen Geschäftsbedingungen (AGB), das Löschen von Useraccounts betreffend.
    Näheres könnt Ihr hier nachlesen: AGB-Änderung
  • Was gibt es Schöneres als den Mai draußen in der Natur mit allen Sinnen zu genießen? Lasst uns teilhaben an Euren Erlebnissen und macht mit beim Thema des Monats Da blüht uns was! ---> Klick

Dateinamensvergabe mittels skript

bginner

Ingrid Marie
Registriert
13.12.09
Beiträge
266
Hallo zusammen,
ich habe eine kleine iPhone App die es den Benutzern ermöglicht Dateien (Bilder) auf einen Server hochzuladen.
Da es unter umständen vorkommen kann das mehrere Benutzer im Sekundentakt Bilder hochladen, muss ich mir überlegen
wie ich die Bilder eindeutig aber immer wieder verschieden benennen kann, so das ein überschreiben eines Bildes durch einen gleichen Dateinamen unmöglich ist. und da gehen mir jetzt die ideen aus. Ich habe schon mal überlegt vielleicht im Dateinamen den NSUserDeviceIdentifier, oder wie der heißt, unterzubringen....der soll ja eindeutig sein. Dann hätte ich schon mal eine Unterscheidung zwischen den einzelnen usern aber natürlich muss in den Dateinamen noch ein element rein was sich immer ändert, sonst kann der user ja nur ein bild hochladen welches durch weitere Uploads immer wieder überschrieben wird. Eine Idee wäre vielleicht noch eine Zeitangabe einzubauen, allerdings kann ich keine sekundengenaue Zeitangabe einbauen da der Upload des Bildes (und noch anderer Infos) fast immer knapp mehr als eine sekunde dauert(auch abhängig von der Größe) und nur eine minutengenaue Zeitangabe im dateinamen wäre zu unsicher (überschreibungsgefahr). Also was kann ich tun? Vielleicht habt ihr ja bessere Vorschläge als ich. Ich hoff ich hab mein Problem verständlich geäußert.
Wäre nett wenn wir da einige Vorschläfge zusammentragen und diskuttieren könnten.
 

Rastafari

deaktivierter Benutzer
Registriert
10.03.05
Beiträge
18.150
1) Warum sollte eine Sekundenangabe denn nicht gehen?
Du könntest auch tausendstel Sekunden angeben, auch wenn der Upload 4 Wochen dauern würde.

2) Für solche Zwecke bietet sich ein Hashwert an, der über den Dateiinhalt gebildet wird (zB mit MD5).
Der identifiziert ein Bild nicht nur absolut eindeutig anhand seines Inhalts, sondern ermöglicht darüber hinaus auch noch eine einfache Prüfung der Dateiintegrität.
 

LittlePixel

Strauwalds neue Goldparmäne
Registriert
09.07.08
Beiträge
641
Hallo,

und warum sollte Du kein Datum mit Uhrzeit nehmen können?
Siehe NSDate.

Es spielt doch gar keine Rolle, wie lange der Upload benötigt.
Der Dateiname ist dann einfach der Zeitpunkt, bei dem der Upload begonnen hat.
Verstehe Deine Sorge nicht.

siehe -dateWithTimeIntervalSince1970: http://developer.apple.com/mac/libr...occ/clm/NSDate/dateWithTimeIntervalSince1970:

Das gibt es dann sicherlich nur einmal.

Viele Grüße
 

Poljpocket

Salvatico di Campascio
Registriert
07.01.07
Beiträge
432
Oder schick die Datei an ein PHP Skript. Das kann ich dir sonst basteln. Im Skript kannst du dann zB eine Nummerierung über eine Datenbank oder Datei direkt auf dem Server installieren.

Es ist vom Prinzip her sowieso besser, wenn sich der Server um die eindeutigen Dateinamen kümmert. Dann kannst du mittels NSURLConnection und POST Protokoll die Daten senden, welche PHP dann in eine Datei speichert. Es gibt unzählige Beispiele im Internet für Dateiuploads mit PHP.

Und: mit der Geräteidentifikation kann - logisch - ein iOS Gerät identifiziert werden. Eine gefährliche Information. Würde ich keinesfalls benutzen!

Gruss ppocket

Sent from my HTC Desire using Tapatalk