Skocz do zawartości
Pecetowicz Forum komputerowe

Darmowy skrypt na hosting zdjęć [PHP]


Rekomendowane odpowiedzi

  • Ekspert

Fajnie ze kodzisz 🙂 co do skryptu nasuwa mi się kilka uwag:

  • poczytaj o standardzie kodu PSR-2 albo lepiej PSR-12
  • pliki oraz nazwy zmiennych powinny być po angielsku,
  • nie używaj zmiennych które nie wskazują jaka jest ich zawartość, nie ma sensu przypisywać zmiennej $folder do $katalog:
    Spoiler

     

    
    
    <?php
    // źle
    $katalog="$folder";
    $kat=opendir($katalog);
    
    //lepiej
    $catalogDirectory = opendir($imgPath);

     

     

     

     

  • zamiast wielu elseif lepiej użyć switch:

    Spoiler

     

    
    
    <?php
    // nope
    if($typfoto == 'png'){
    	header("content-type: image/png");
    	$img = imagecreatefrompng($imge);
    }elseif($typfoto == 'bmp' ){
    	header("content-type: image/bmp");
    	$img = imagecreatefrompng($imge);
    }elseif($typfoto == 'jpeg' || $typfoto == 'jpg'){
    	header("content-type: image/jpeg");
    	$img = imagecreatefromjpeg($imge);
    }elseif($typfoto == 'gif'){
    	header("content-type: image/gif");
    	$img = imagecreatefromgif($imge);
    }
    
    // prawda że ładniej?
    
    switch ($typfoto) {
        case 'png':
            header("content-type: image/png");
            break;
        case 'bmp':
            header("content-type: image/bmp");
            break;
        case 'jpeg':
        case 'jpg':
            header("content-type: image/jpeg");
            break;
        case 'bmp':
            header("content-type: image/gif");
            break;
    }
    
    $img = imagecreatefromgif($imge);

     

     

  • poszukaj sobie jak korzystać z funkcji, klas i przestrzeni nazw dzięki temu podzielisz kod, będzie on bardziej czytelny i łatwiejszy w utrzymaniu,

  • obecnie nie includuje się plików, zamiast tego poszukaj informacji o czymś takim jak composer i autoload PSR-4 (Wymaga znajomości klas, funkcji i przestrzeni nazw)
  • złym nawykiem jest mieszanie logiki aplikacji i części wizualnej polecam np wzorzec MVC i skorzystanie np z szablonów TWIG,
  • kiedy porównujesz wartości korzystaj z === a nie == jeśli coś ma być intem to zawsze ma być intem,

powodzenia w nauce 😄

Edytowane przez Pankrok
jeszcze jedna uwaga
Odnośnik do odpowiedzi
Udostępnij na innych stronach
  • Założyciel

Lactriksen przyznaj się kodziłeś Albicla? 😛Z 10 lat temu też tworzyłem takie rzeczy, dobry sposób do naukę PHP 😄

Jak trafnie zauważył esej wystarczy rozszerzenie na automatyczne odświeżanie co x sekund i przez niezabezpieczony formularz POST można załadować ten sam obraz tysiące razy. 

Pula unikalnej generowanej liczby jest za mała w końcu skrypt wygeneruje taką samą nazwę pliku i zostanie nadpisany albo skrypt wypluje błąd. Funkcja uniqid daje większe pole do zabawy.

Odnośnik do odpowiedzi
Udostępnij na innych stronach
  • 4 tygodnie później...

Problem wciąż nierozwiązany? Dodaj swoją odpowiedź

Jeśli chcesz dodać odpowiedź, zaloguj się lub zarejestruj nowe konto. Jedynie zarejestrowani użytkownicy mogą komentować zawartość tej strony.

Zarejestruj nowe konto

Załóż nowe konto. To bardzo proste!

Zarejestruj się

Zaloguj się

Posiadasz już konto? Zaloguj się poniżej.

Zaloguj się
×
×
  • Dodaj nową pozycję...