<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <meta http-equiv="X-UA-Compatible" content="ie=edge"> <title>Document</title> </head> <body> <form action="<?php $_SERVER["PHP_SELF"] ?>" method="POST" enctype="multipart/formdata"> <p>Выберите файл для загрузки: <br> <input type="file" name="image"> </p> <input type="submit" value="Отправить"> </form> <?php if ($_SERVER["REQUEST_METHOD"] == "POST") { $name = $_FILES["image"]["name"]; $temp_name = $_FILES["image"]["tmp_name"]; $size = $_FILES["image"]["size"]; $ext = pathinfo($name, PATHINFO_EXTENSION); $ext = strtolower($ext); if ($ext != "png" && $ext != "jpg" && $ext != "gif") { echo "Изображение должно быть в формате PNG, JPG (JPEG) или GIF.<br>"; exit(); } if ($size > 512000) { echo "Размер файла не должен превышать 512 Кб.<br>"; exit(); } if (file_exists($name)) { echo "Файл с именем $name уже был выгружен.<br>"; exit(); } try { move_uploaded_file($temp_name, $name); echo "Файл $name выгружен:<br>"; echo '<img src= "' . $name . '"'; } catch(Exception $e) { echo "Файл $name не может быть выгружен.<br>"; } } ?> </body> </html> I load the image, then I click send and errors are output for the lines of code where the variables $ name, $ tmp_name and $ size are assigned values. Errors such: Notice: Undefined index image
NEW PROBLEM:
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <meta http-equiv="X-UA-Compatible" content="ie=edge"> <title>Document</title> </head> <body> <form action="<?php $_SERVER["PHP_SELF"] ?>" method="POST" enctype="multipart/form-data"> <p>Выберите файл для выгрузки: <br> <input type="file" name="image"> </p> <input type="submit" value="Отправить"> </form> <?php if ($_SERVER["REQUEST_METHOD"] == "POST") { $name = $_FILES['image']['name']; $temp_name = $_FILES["image"]["tmp_name"]; $size = $_FILES["image"]["size"]; $ext = pathinfo($name, PATHINFO_EXTENSION); $ext = strtolower($ext); try { if ($ext != "png" && $ext != "jpg" && $ext != "gif") { throw new Exception("Изображение должно быть в формате PNG, JPG (JPEG) или GIF.<br>"); } if ($size > 512000) { throw new Exception("Размер файла не должен превышать 512 Кб.<br>"); } if (file_exists($name)) { throw new Exception("Файл уже был выгружен!<br>"); } move_uploaded_file($temp_name, $name); echo "Файл $name выгружен:<br>"; echo '<img src= " '. $name .' "'; } catch(Exception $e) { echo $e->getMessage(); } } ?> </body> </html> The exception is triggered all the time The file has already been unloaded!
enctype="multipart/form-data"andenctype="multipart/formdata"? - Rustam Gimranovecho "Изображение должно быть в формате PNG, JPG (JPEG) или GIF.<br>";line should now work outecho "Изображение должно быть в формате PNG, JPG (JPEG) или GIF.<br>";- Rustam Gimranov