Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [php][mysql] Dodawanie zdjęcia do katalogu
Forum PHP.pl > Forum > PHP
blackneron
Witam. Problem jest tego typu:
1) Dodaję do bazy rózne dane ( m.in. identyfikator kategorii zdjęcia ).
2) Potem sprawdzam czy jest katalog (o nazwie kategorii) i jeżeli tak to dodaję do - kategoria/nazwa_pliku/plik.jpg plik jpg którego nazwa to id + '.jpg.'

  1. <?php
  2.  
  3.  $id=mysql_insert_id(); // pobranie identyfikatora
  4.  $nazwa=sprintf($id).'.jpg';
  5.  
  6. $zap=mysql_query("select a.katid, a.id, a.nazwa,
  7. b.katid, b.nazwa_kat 
  8. from zdjecia AS a, kategorie AS b 
  9. where b.katid='$katid' and a.nazwa='$nazwa' and a.id='$id'");  
  10.  $wiersz=mysql_fetch_array($zap);
  11.  
  12. if(!is_dir("galeria/$wiersz[nazwa_kat]/$wiersz[nazwa]")) mkdir("galeria/$wiersz[nazwa_kat]/$wiersz[nazwa]");
  13.  if(move_uploaded_file($_FILES['foto']['tmp_name'],"galeria/$wiersz[nazwa_kat]/$wiersz[nazwa]/$nazwa"))
  14.  {
  15.  mysql_query("UPDATE zdjecia SET nazwa='$nazwa' WHERE id=$id");
  16.  
  17.  funkcja_dodania_miniaturki($nazwa);
  18.  
  19.  print "Zdjęcie zapisano: $nazwa <br />";
  20.  }
  21.  else
  22.  {
  23.  mysql_query("DELETE FROM zdjecia WHERE id=$id");
  24.  print "Błąd zapisu zdjęcia<br />";
  25.  }
  26. ?>

Niestety nie tworzy katalogów (kategorii i pliku). HELP!
misiek172
być może masz nie dozwolone znaki w nazwie którą chcesz nazwać katalog
Fixus
popraw
Kod
if(!is_dir("galeria/$wiersz[nazwa_kat]/$wiersz[nazwa]")) mkdir("galeria/$wiersz[nazwa_kat]/$wiersz[nazwa]");
   if(move_uploaded_file($_FILES['foto']['tmp_name'],"galeria/$wiersz[nazwa_kat]/$wiersz[nazwa]/$nazwa"))

na
Kod
if(!is_dir("galeria/$wiersz['nazwa_kat']/$wiersz['nazwa']")) mkdir("galeria/$wiersz['nazwa_kat']/$wiersz['nazwa']");
   if(move_uploaded_file($_FILES['foto']['tmp_name'],"galeria/$wiersz['nazwa_kat']/$wiersz['nazwa']/$nazwa"))

Kod
mysql_query("UPDATE zdjecia SET nazwa='$nazwa' WHERE id=$id");

na
Kod
mysql_query("UPDATE zdjecia SET nazwa='$nazwa' WHERE id='$id'");

i
Kod
  mysql_query("DELETE FROM zdjecia WHERE id=$id")

na
Kod
  mysql_query("DELETE FROM zdjecia WHERE id='$id'")
blackneron
spoko spoko tutaj problem nie tkwił. Po prostu nie chciał zapisać folderu ze znakami specjalnymi. Jest już OK.
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.