Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [php]upload plikow i zapis ze zmieniona nazwa.
Forum PHP.pl > Forum > Przedszkole
Matiash
Witam mam taki skrypt:
  1. <?php
  2. if (isset($_COOKIE['ciastko6'])) {
  3.  echo("Musisz odczekać 120 sekund aby wysłać kolejną relację.");
  4.  /*warunek sprawdza czy istnieje w przeglądarce ciasteczko o nazwie
  5.    "ciastko2", jeśli tak to nie pozwala na ponowne wysłanie formularza*/
  6. }
  7. else {
  8. $katalog="./includes/podstrony/cutenews/data/upimages/".date('dmyHis')."/";
  9. mkdir($katalog,0777);//tworzymy katalog
  10. $plik=fopen($katalog."opis.txt","w+");
  11. fputs($plik,"Imię i nazwisko:".chr(10).$_POST['imie'].chr(10).chr(10)."Adres email:".chr(10).$_POST['email'].chr(10).chr(10)."Kategoria:".chr(10).$_POST['kategoria'].chr(10).chr(10)."Tytuł:".chr(10).$_POST['tytul'].chr(10).chr(10)."Treść wiadomości:".chr(10).$_POST['tresc'].chr(10).chr(10)."Dodano: ".chr(10).date("d F Y, H:i"));
  12. fclose($plik);
  13. echo "Dziękujemy za przesłanie relacji. Za kilka minut powinna ukazać się na stro
    nie.<br /><br />"
    ;
  14. for ($i=0; $i<sizeof($_FILES['plik']['size']); $i++) {
  15. if ($_FILES['plik']['size'][$i] !=0) {
  16. $uploaded = $katalog. $_FILES['plik']['name'][$i];
  17. if (is_uploaded_file($_FILES['plik']['tmp_name'][$i])) {
  18.  if ($_FILES['plik']['type'][$i]=="image/jpeg") {
  19.  } else { echo "Zły format pliku numer $i<br>"; exit; }
  20. if ($_FILES['plik']['size'][$i] > 205500 ) {
  21. echo "Rozmiar zdjęcia numer $i jest zbyt wielki<br />";
  22.  
  23. } else {
  24. move_uploaded_file($_FILES['plik']['tmp_name'][$i], $uploaded);
  25. $dane=strip_tags(file_get_contents($katalog.$_FILES['plik']['name'][$i]));//usuwamy tagi php i html
  26.  $file=fopen($katalog.$_FILES['plik']['name'][$i],'w');//otwieramy plik
  27.  fwrite($file,$dane);//zapisujemy go w zmienionej formie
  28.  
  29. echo "Operacja wysyłania zdjęcia nr. $i przebiegła pomyślnie<br />";
  30. }
  31. } else {
  32.  
  33. echo "Operacja przesłania zdjęć nie powiodła się $i!<br />";
  34. }
  35. }
  36. }
  37.  
  38. setcookie("ciastko6", "glosowalem", time()+120);
  39.  
  40.  
  41. }
  42. ?>


Pytanie jest takie jak zrobic zeby usunac wszystkie polskie znaki i spacje z uplodowanych plikow lub jak zrobic zeby np plik mial jakas losowa nazwe. Kazde z tych rozwiazan mnie satysfakcjonuje. Prosze o pomoc.
Prosze nie bić tongue.gif .Wiem ze bylo juz kilka podobnych tematow min:
http://forum.php.pl/index.php?showtopic=30084&hl=

http://forum.php.pl/index.php?showtopic=30084&hl=

http://forum.php.pl/index.php?showtopic=58063&hl=

ale nie bardzo wiem jak to zastosowac w moim przypadku.
in5ane
  1. <?php
  2. srand((double)microtime()*1000000);
  3. $nowa_nazwa = md5(uniqid(rand()));
  4. ?>


+ dopisz sobie to do wgrywania i do tego kropke z rozszezeniem.
Matiash
Dzieki a jak zrobic tak zeby np. pliki po kolei byly losowane np. 1 , 2 , 3?

zmienilem tak:
  1. <?php
  2. if (isset($_COOKIE['ciastko5'])) {
  3.  echo("Musisz odczekać 120 sekund aby wysłać kolejną fotorelację.");
  4.  /*warunek sprawdza czy istnieje w przeglądarce ciasteczko o nazwie
  5.    "ciastko", jeśli tak to nie pozwala na ponowne wysłanie formularza*/
  6. }
  7. else {
  8. $katalog="./includes/podstrony/cutenews/data/upimages/".fot.date('dmyHis')."/";
  9. mkdir($katalog,0777);//tworzymy katalog
  10. $plik=fopen($katalog."opis.txt","w+");
  11. fputs($plik,"Tytuł fotorelacji:".chr(10).$_POST['tytulfotorel'].chr(10).chr(10)."Imię i nazwisko lub nick:".chr(10).$_POST['imie'].chr(10).chr(10)."Adres email:".chr(10).$_POST['email'].chr(10).chr(10)."Krótki opis:".chr(10).$_POST['opis'].chr(10).chr(10)."tytuł zdjęcia nr 1:".chr(10).$_POST['tytul1'].chr(10).chr(10)."tytuł zdjęcia nr 2:".chr(10).$_POST['tytul2'].chr(10).chr(10)."tytuł zdjęcia nr 3:".chr(10).$_POST['tytul3'].chr(10).chr(10)."tytuł zdjęcia nr 4:".chr(10).$_POST['tytul4'].chr(10).chr(10)."tytuł zdjęcia nr 5:".chr(10).$_POST['tytul5'].chr(10).chr(10)."tytuł zdjęcia nr 6:".chr(10).$_POST['tytul6'].chr(10).chr(10)."tytuł zdjęcia nr 7:".chr(10).$_POST['tytul1'].chr(10).chr(10)."tytuł zdjęcia nr n:".chr(10).$_POST['tytul7'].chr(10).chr(10)."tytuł zdjęcia nr 8:".chr(10).$_POST['tytul8'].chr(10).chr(10)."tytuł zdjęcia nr 9:".chr(10).$_POST['tytul9'].chr(10).chr(10)."tytuł zdjęcia nr 10:".chr(10).$_POST['tytul10'].chr(10).chr(10)."tytuł zdjęcia nr 11:".chr(10).$_POST['tytul11'].chr(10).chr(10)."tytuł zdjęcia nr 12:".chr(10).$_POST['tytul12'].chr(10).chr(10)."tytuł zdjęcia nr 13:".chr(10).$_POST['tytul13'].chr(10).chr(10)."tytuł zdjęcia nr 14:".chr(10).$_POST['tytul14'].chr(10).chr(10)."tytuł zdjęcia nr 15:".chr(10).$_POST['tytul15'].chr(10).chr(10)."tytuł zdjęcia nr 16:".chr(10).$_POST['tytul16'].chr(10).chr(10)."tytuł zdjęcia nr 17:".chr(10).$_POST['tytul17'].chr(10).chr(10)."tytuł zdjęcia nr 18:".chr(10).$_POST['tytul18'].chr(10).chr(10)."tytuł zdjęcia nr 19:".chr(10).$_POST['tytul19'].chr(10).chr(10)."tytuł zdjęcia nr 20:".chr(10).$_POST['tytul20'].chr(10).chr(10)."Dodano: ".chr(10).date("d F Y, H:i"));
  12. fclose($plik); 
  13. echo "Dziękujemy za przesłanie fotorelacji. Za kilka minut powinna ukazać się na stronie.<br /><br />";
  14. for ($i=0; $i<sizeof($_FILES['plik']['size']); $i++) {
  15. if ($_FILES['plik']['size'][$i] !=0) {
  16. $uploaded = $katalog. $_FILES['plik']['name'][$i];
  17. if (is_uploaded_file($_FILES['plik']['tmp_name'][$i])) {
  18.  if ($_FILES['plik']['type'][$i]=="image/jpeg") {
  19.  } else { echo "Zły format pliku numer $i<br>"; exit; }
  20. if ($_FILES['plik']['size'][$i] > 205500 ) {
  21. echo "Rozmiar zdjęcia numer $i jest zbyt wielki<br />";
  22.  
  23. } else {
  24. $zdjec = count(glob("$katalog./*.jpg"));
  25. $jeden = 1;
  26. $nowanazwa= $zdjec+$jeden;
  27.  
  28. move_uploaded_file($_FILES['plik']['tmp_name'][$i], $katalog.$nowanazwa.".jpg");
  29. $dane=strip_tags(file_get_contents($katalog.$_FILES['plik']['name'][$i]));//usuwamy tagi php i html
  30.  $file=fopen($katalog.$_FILES['plik']['name'][$i],'w');//otwieramy plik
  31.  fwrite($file,$dane);//zapisujemy go w zmienionej formie
  32.  
  33. echo "Operacja wysyłania zdjęcia nr. $i przebiegła pomyślnie<br />";
  34. }
  35. } else {
  36.  
  37. echo "Operacja przesłania zdjęć nie powiodła się $i!<br />";
  38. }
  39. }
  40. }
  41.  
  42. setcookie("ciastko5", "glosowalem", time()+120);
  43.  
  44.  
  45. }
  46. ?>

Ale wywala blad tutaj:
  1. <?php
  2. $nowanazwa= $zdjec+$jeden;
  3. ?>

Wiec mysle ze zle wpisalem to :
  1. <?php
  2. $zdjec = count(glob("$katalog/*.jpg"));
  3. ?>




Dobra poradziłem sobie:
Przestawiam rozwiazanie. Wystarczy przed funkcja move_uploaded_file dodac ta linijke:

  1. <?php
  2. <
  3. $wynik = strtr($_FILES['plik']['name'][$i], 'ĘÓĄŚŁŻŹŃęóąśłżźćń ', 'EOASLZZCNeoaslzzcn_');
  4. ?>
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.