Moja pytanie brzmi czy jest on bezpieczny i w miarę dobry/przemyślany?


Ok poprawiłem

case 'upload': $directory = $_GET['p']; $img_name = $_FILES['img_file']['name']; $img_size = $_FILES['img_file']['size']; //------------------------------------------------------------------// $new_png = $random_name . '.png'; $img_name = $random_name . $extension; $img_dir = "../uploaded_img/$directory/"; $img_full = $img_dir . $img_name; //------------------------------------------------------------------// //------------------------------------------------------------------// AddReport('error', '<b>Błąd</b> - Wybierz plik'); break; } //------------------------------------------------------------------// AddReport('error', '<b>Błąd</b> - Niedozwolony format pliku'); break; } //------------------------------------------------------------------// elseif($px_array[0] < 1 || $px_array[1] < 1) { AddReport('error', '<b>Błąd</b> - Plik nie jest obrazkiem'); break; } //------------------------------------------------------------------// AddReport('error', '<b>Błąd</b> - Nie można przesłać pliku'); break; } //------------------------------------------------------------------// else { chmod($img_full, 0600 ); //------------------------------------------------------------------// if($type > 3 || $img_size >= 2097152) { // [IMAGETYPE_GIF] => 1 // [IMAGETYPE_JPEG] => 2 // [IMAGETYPE_PNG] => 3 // 2 MB AddReport('error', "<b>Błąd</b> - Zbyt duży plik lub niedozwolony format"); break; } if($width > 400 || $height > 400 ){ $new_dimensions = ScaleImg($width, $height, 400, 400);; } else { $new_dimensions['width'] = $width; $new_dimensions['height'] = $height; } $img_png = imagecreatetruecolor($new_dimensions['width'], $new_dimensions['height']); switch ($type) { case 1: // GIF $img_old = imagecreatefromgif($img_full); imagealphablending($img_png, false); imagesavealpha($img_png, true); imagecopyresampled($img_png,$img_old, 0, 0, 0, 0, $new_dimensions['width'], $new_dimensions['height'], $width, $height); imagepng($img_png, $img_dir.$new_png); break; case 2: // JPG $img_old = imagecreatefromjpeg($img_full); imagecopyresampled($img_png,$img_old, 0, 0, 0, 0, $new_dimensions['width'], $new_dimensions['height'], $width, $height); imagepng($img_png, $img_dir.$new_png); break; case 3: // PNG $img_old = imagecreatefrompng($img_full); imagealphablending($img_png, false); imagesavealpha($img_png, true); imagecopyresampled($img_png,$img_old, 0, 0, 0, 0, $new_dimensions['width'], $new_dimensions['height'], $width, $height); imagepng($img_png, $img_dir.$new_png); break; } //------------------------------------------------------------------// $query = "INSERT INTO about_img (id, name) VALUES (NULL, '$new_png')"; $result = mysqli_query($connect, $query); if(!$result) { AddReport('error', '<b>Błąd</b> - Bład podczas połączenia z bazą danych'); } AddReport('success', "<b>Obraz dodany pomyślnie</b>"); } break;
Działaaaaa


Naprawione, ponawiam
