Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [PHP]Dodawanie zdjęcia + zmiana nazwy
arekko
post
Post #1





Grupa: Zarejestrowani
Postów: 42
Pomógł: 0
Dołączył: 8.01.2015

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


Witam, mam takie skrypt, który dodaje mi zdjęcie na serwer i usuwa stare istniejące.

  1. $config = array();
  2. $config['path_images'] = '../../../grafika/galeria/'; // ścieżka do katalogu grafik
  3. $config['max_file_size'] = 1048576; // maksymalna wielkość pliku w bajtach, 1MB
  4. $config['accepted_extensions'] = array('jpg', 'jpeg', 'png', 'gif'); // dozwolone rozszerzenia
  5. $config['accepted_mimes'] = array('image/jpg', 'image/jpeg', 'image/png', 'image/gif'); // dozwolone typy MIME
  6.  
  7. if ( !file_exists($config['path_images']) || !is_dir($config['path_images']) ) {
  8. if ( !mkdir($config['path_images']) ) { // utworzenie katalogu wraz
  9. exit('Folder obrazków niemożliwy do utworzenia!');
  10. }
  11. chmod($config['path_ images'], 0777); // nadanie praw
  12. }
  13.  
  14. if ( !extension_loaded('gd') ) { // sprawdzenie, czy GD jest załadowane
  15. if ( !dl('gd') ) { // próba wymuszenia załadowania
  16. exit('Biblioteka GD nie została załadowana!');
  17. }
  18. }
  19.  
  20. if ( isset($_FILES['upload_image']) && isset($_POST['upload_submit']) )
  21. {
  22. // pętla analizująca zawartość wszystkich trzech potencjalnie wysyłanych plików
  23. foreach ( $_FILES['upload_image']['error'] as $key => $arr )
  24. {
  25. if ( $_FILES['upload_image']['error'][$key] != UPLOAD_ERR_OK )
  26. {
  27. continue;
  28. }
  29. if ( $_FILES['upload_image']['size'][$key] > $config['max_file_size'] )
  30. {
  31. echo "plik jest za duży";
  32. continue;
  33. }
  34. if ( file_exists($config['path_images'] . $_FILES['upload_image']['name'][$key]) )
  35. {
  36. echo "Plik o takiej nazwie już istnieje!";
  37. continue;
  38. }
  39. $extension = explode('.', $_FILES['upload_image']['name'][$key]);
  40. if ( in_array(strtolower($extension[count($extension)-1]), $config['accepted_extensions']) === false || in_array($_FILES['upload_image']['type'][$key], $config['accepted_mimes']) === false )
  41. {
  42. echo "Niepoprawne rozszerzenie pliku.";
  43. continue;
  44. }
  45. $image = getimagesize($_FILES['upload_image']['tmp_name'][$key]);
  46. if ( !is_array($image) || $image[0] < 1 )
  47. {
  48. echo "Plik graficzny jest spreparowany.";
  49. continue;
  50. }
  51. if ( !is_uploaded_file($_FILES['upload_image']['tmp_name'][$key]) )
  52. {
  53. echo "Plik nie został wysłany.";
  54. continue;
  55. }
  56. if ( !move_uploaded_file($_FILES['upload_image']['tmp_name'][$key], $config['path_images'] . $_FILES['upload_image']['name'][$key]) )
  57. {
  58. echo "Wysyłanie nie może zostać zakończone poprawnie.";
  59. continue;
  60. }
  61. echo "Zdjęcie zostało poprawnie dodane!";
  62.  
  63. include 'usunstare.php';


Skrypt usunstare.php

  1. $file= $_GET['zdjecie'];
  2. $katalog = "../../../grafika/galeria/";
  3. if (file_exists($katalog.$file))
  4. unlink($katalog.$file);
  5. echo'Zdjęcie zostało usunięte!'


Chciałbym teraz to tak zmienić, żeby zdjęcie, które dodaje miało taką samą nazwę jak to stare. Proszę o pomoc (IMG:style_emoticons/default/smile.gif)
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
arekko
post
Post #2





Grupa: Zarejestrowani
Postów: 42
Pomógł: 0
Dołączył: 8.01.2015

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


No tak, tylko, żeby go nadpisać oby dwa muszą mieć taką samą nazwę. Więc potrzebuje kodu który będzie zmieniał nazwę zdjęcia dodawanego na nazwę starego. Wiem, że do tego można użyć rename. Jednak nie potrafię tego zastosować w tym kodzie.

Go to the top of the page
+Quote Post
b4rt3kk
post
Post #3





Grupa: Zarejestrowani
Postów: 1 933
Pomógł: 460
Dołączył: 2.04.2010
Skąd: Lublin

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


Cytat(arekko @ 25.02.2015, 23:49:18 ) *
No tak, tylko, żeby go nadpisać oby dwa muszą mieć taką samą nazwę. Więc potrzebuje kodu który będzie zmieniał nazwę zdjęcia dodawanego na nazwę starego. Wiem, że do tego można użyć rename. Jednak nie potrafię tego zastosować w tym kodzie.


No tak, tylko powiedz mi w jaki sposób chcesz rozpoznać, że nowo wczytany plik jest tym, który ma nadpisać któryś ze starych?

Nie, rename nie jest tu w ogóle potrzebne, bo i po co?
Go to the top of the page
+Quote Post

Posty w temacie


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

 



RSS Aktualny czas: 29.12.2025 - 15:46