Mam taki problem, robię skrypt w którym wgrywamy jakiś plik na serwer, by uchronić przed nadpisaniem go chcę by przy ponownym wgraniem go była zmieniona nazwa - dokładnie do nazwy dodana np. (1) i tak dalej.
Napisałem taki kod:
$plik = $_FILES['plik']['tmp_name']; $nazwa = $_FILES['plik']['name']; $ext = getExtension($nazwa); $file = $katalog.'/'.$nazwa; $typile = $typile+1; $nazwa = $nazwa.'(1).'.$ext; $file = $katalog.'/'.$nazwa; $typile = $typile+1; $kopia = $kopia+1; $nazwa = $nazwa.$kopia.').'.$ext; } }
Usuwa on rozszerzenie pliku z nazwy wraz znakiem "." zostawiając samą nazwę pliku (tzn z "obraz.jpg" robi mi "obraz") i później dodaje w nawiasie liczbę (tzn "obraz(1)") a na sam koniec dodaje rozszerzenie z powrotem (tzn. "obraz(1).jpg).
Niestety problem pojawia się w tym rozwiązaniu że wgrywając kilkakrotnie plik "obraz.jpg" tworzy się "obraz(1).jpg" i "obraz(2).jpg a później cały czas nadpisuje się jako "obraz(2).jpg".
Prosiłbym o jakieś rozwiązanie pozwalające mi wgrywanie plików już o istniejącej nazwie by w nawiasie liczba nie zatrzymywała się na 2 lecz szła w górę.
Pozdrawiam