Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Listowanie katalogów a selekty i automatyczna zmiana nazw plików, kilka problemów
pikornecki
post
Post #1





Grupa: Zarejestrowani
Postów: 50
Pomógł: 0
Dołączył: 27.07.2010

Ostrzeżenie: (0%)
-----


Witam,

Listuję katalogi a następnie wstawiam do selecta standardowo tj:
  1. $katalog = "scierzka/path";
  2. $dir = opendir($katalog);
  3.  
  4. echo '<select name="imageToDeleteFromRotator" class="select_pozycja">';
  5. if ($dir) {
  6. $count = 0;
  7. while ($file = readdir($dir)) {
  8. ;
  9. if (($file == "..") || ($file == ".") || ($file == ".DS_Store"))
  10. continue;
  11. else if (is_file($katalog . $file)) {
  12. echo '<option value="' . $file . '" name="' . $file . '">' . $file . '</option>';
  13. }
  14. $count = $count + 1;
  15. }
  16. closedir($dir);
  17. echo "</select>";
  18. }
  19. echo '</div>';

No i listuje pięknie tylko nie po kolei, np:
1.jpg
10.jpg
11.jpg
2.jpg.
3.jpg
itd...

Jak zrobić żeby jednak po kolei się ustawiło?

Kolejna rzecz, mam sobie już selekta z wylistowanymi graficzkami w jpg i chcę sobie któregoś usunąć ale od razu chcę też poprawić nazwy plików np kiedy wywalam plik 4.jpg to chcę że by pozostałe pozmieniały swoją wartość tak żeby zachować kolejność 1,2,3,4,5,6,7 .itd, tak więc:
  1. $file = $_POST['imageToDeleteFromRotator']; /* to z tego selekta wyżej */
  2. if ($file != 'none') {
  3. $count = 1;
  4. $dir = opendir($path);
  5. if ($dir) {
  6. unlink($path.$file);
  7. $_SESSION['message'] = 'Plik ' . $file . ' został usunięty.';
  8. }
  9.  
  10. while ($file2 = readdir($dir)) {
  11. if (($file2 == "..") || ($file2 == ".") || ($file2 == ".DS_Store"))
  12. continue;
  13. else if (is_file($path.$file2)) {
  14. rename($path.$file2, $path."zdj$count.jpg");
  15. $count++;
  16. }
  17. }
  18. $count = 0;
  19. closedir($dir);
  20. }

tu jednak mały bug, jeśli jest mniej niż 10 plików to jest ok, powyżej tej liczby źle zmienia te nazwy i z 36 plików po usunięciu 1 zostaje np. 12 reszta gdzieś ginie. CO TU JEST ŹLE?

Z góry dzięki za pomoc.

EDIT: przepraszam, na bb poprawione:)

Ten post edytował pikornecki 14.11.2011, 15:04:29
Go to the top of the page
+Quote Post

Posty w temacie


Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 22.08.2025 - 06:33