Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Czy plik istnieje?
topik53
post 31.03.2011, 18:12:56
Post #1





Grupa: Zarejestrowani
Postów: 107
Pomógł: 1
Dołączył: 3.06.2010

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


  1. <html>
  2. <head>
  3. <meta http-equiv="Content-type" content="text/html; charset=iso-8859-2" />
  4. </head>
  5. <body>
  6. <div>
  7. <form enctype="multipart/form-data" action="index.php" method="POST">
  8. <input name="img" type="file" />
  9. <input type="submit" value="Wyślij plik" />
  10. </form>
  11. </div>
  12.  
  13. <?php
  14.  
  15. //Pobieranie danych
  16. $plik_tmp = $_FILES['img']['tmp_name'];
  17. $nazwa = $_FILES['img']['name'];
  18. $rozmiar = $_FILES['img']['size'];
  19. ####################
  20. //Sprawdzanie rozszerzenia
  21. $r = explode(".",$nazwa);
  22. $roz = $r[1];
  23. #########################
  24.  
  25. do{
  26. $nazwaa=rand(1, 10);
  27. $test = file_exists($plik); //sprawdzenie czy plik istnieje
  28. $plik="load/".$nazwaa.'.'.$roz;
  29. }while(!$plik);
  30.  
  31. $plik="load/".$nazwaa.'.'.$roz;
  32. if(is_uploaded_file($plik_tmp)) {
  33. if($roz ='txt')
  34. {
  35. move_uploaded_file($plik_tmp, "$nazwa");
  36. echo "Plik: <strong>$nazwa</strong> o rozmiarze
  37. <strong>$rozmiar bajtów</strong> został przesłany na serwer!";
  38. rename("$nazwa", "load/".$nazwaa.'.'.$roz);
  39. echo 'link do pliku:<br />www.i9i.cba.pl/a/load/'.$nazwaa.'.'.$roz;
  40. }
  41. else{
  42. echo "inne niz txt nie moze kurwa byc";
  43. }
  44. }
  45.  
  46.  
  47. ?>
  48.  
  49. </body>
  50. </html>

Chcę żeby sprawdziło czy dany plik istnieje na serwerze jeżeli tak niech wylosuje liczbe(nazwe pliku) jeszcze raz,
Co jest źle? Jak to rozwiązać bez do.while?
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 1)
wmatusiak
post 31.03.2011, 19:15:32
Post #2





Grupa: Zarejestrowani
Postów: 25
Pomógł: 7
Dołączył: 27.03.2011
Skąd: Kęty

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


Zmień linie od 25 do 29 na
  1. do{
  2. $nazwaa = rand(1, 10);
  3. $plik = "load/".$nazwaa.'.'.$roz;
  4. }while(file_exists($plik));

i linie 35 na
  1. move_uploaded_file($plik_tmp, $plik);

Powinno zadziałać.
Jeśli chodzi o bez do ... while to możesz użyć dowolnej innej pętli ale jakąś pętle mieć musisz.

Ten post edytował wmatusiak 31.03.2011, 19:19:13
Go to the top of the page
+Quote Post

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 Wersja Lo-Fi Aktualny czas: 14.08.2025 - 05:44