• Jetzt anmelden. Es dauert nur 2 Minuten und ist kostenlos!

Zahl and Dateinamen anhängen, n+1-Schleife

syuam

Neues Mitglied
Hey Leute und zwar geht es bei mir um einen Bildupload.
Wichtig für mein Problem ist nur die Variable : $fileName
Denn sie enthält:
$fileName = $_FILES["uploaded_file"]["name"]; // The file name
Im Moment sieht es so aus, dass nach dem Hochladen eines Bildes der ursprüngliche Dateiname übernommen wird.
Nun möchte ich aber, dass aus dem ursprünglichen Dateinamen z.B.
image.png -> datei1.png wird.
Wird das nächste Bild hochgeladen:
irgendeinBild.png -> datei2.png
Habe bisher folgendes:
PHP:
// Zuerst splitte ich den ganzen Dateinamen:
$array = split ( '[.]', $fileName );
$name = $array[0]; // <-- ergibt bei z.B. image.png --> image 
$typ = $array[1]; // <-- ergibt bei z.B. image.png --> jpg 
$neu = $name.'.'.$typ; // <-- ergibt für obiges Beispiel --> image.jpg
Nun denn... soweit so gut, jetzt geht es mir speziell um die Variable $name mit dem $array[0].
Ich wollte ja, dass dort immer eine um eins höhere Zahl rangehängt wird,
sodass der hunderste upload dann so aussehen würde: datei100.png
mit einer for-Schleife? :
PHP:
for($k=1;$k<$name+1;$k++) {}
Doch wie arrangiere ich diese Schleife?,außerdem muss ich aus $name -> "datei" machen..dafür die rename Funktion oder?habe mir schon ziemlich Mühe gegeben mit dem splitten und dem zusammenfügen und bin noch nicht so lange dabei...wäre über eure Hilfe sehr froh, primär bei der Schleife
LG und danke
 
Zuletzt bearbeitet:
so sollte es gehen, habs aber nicht getestet (aber bei google findest du sowas auf jeden fall auch..):

$path = pathinfo($fileName);
$i = '';
while(true) {
$p = $path['filename'].$i.$path['extension'];
if(!file_exists($p))
break;
$i++;
}

//datei mit namen $p speichern

wichtig ist, dass file_exits überprüft, ob eine Datei bereits existiert und pathinfo die bestandteile eines pfades ausgibt.
 
Zurück
Oben