Изображение профиля Php не загружается

Итак, я пытаюсь загрузить изображение в свою базу данных, чтобы я мог использовать его в качестве изображения профиля пользователя, но после нажатия кнопки "Загрузить" ничего не происходит, вот код:

<?php
include ("conexao.php");
$_SESSION['usu_nome'] = "EDER";
$usuario = $_SESSION['usu_nome'];   
echo "Welcome, ".$usuario."!<p>";
    if (isset($_POST['submit'])) {
    //get file attrivutes
    $name=$_FILES['myfile']['name'];
    $tmp_name=$_FILES['myfile']['tmp_name'];    
    if ($name)
    {
        $location = "avatars/$name";
        move_uploaded_file($tmp_name, $location);       
        $query = mysqli_query("UPDATE esc_usuarios SET imagelocation='$location' WHERE usu_nome ='$usuario'");
        die("Your avatar has benen uploaded");
    }
    else{
        die ("Please select a file!");
    }       
}   
echo "Upload your image:    
<form action='upload.php' method='POST' enctype='multipart/form-data'>
File: <input type='file' name='myfile'> <input type='submit' value='Upload!'>
</form>
";
?>

2 ответа

Отредактируйте и попробуйте

if((isset($_FILES['myfile']) || $_FILES['myfile']['error'] == UPLOAD_ERR_OK)) {
    $name=$_FILES['myfile']['name'];
    $tmp_name=$_FILES['myfile']['tmp_name']; 
    $location = "avatars/$name";
    move_uploaded_file($tmp_name, $location);       
    $query = mysqli_query("UPDATE esc_usuarios SET imagelocation='$location' WHERE usu_nome ='$usuario'");
    die("Your avatar has benen uploaded");
}

Во-вторых, весь этот код в upload.php? или на любой другой странице? как form action='upload.php' установить, вот почему спрашивать....

Сначала попробуйте этот код и настройте его по-своему. Ссылка: https://www.w3schools.com/php/php_file_upload.asp

<?php
$target_dir = "uploads/";
$target_file = $target_dir . basename($_FILES["fileToUpload"]["name"]);
$uploadOk = 1;
$imageFileType = strtolower(pathinfo($target_file,PATHINFO_EXTENSION));
// Check if image file is a actual image or fake image
if(isset($_POST["submit"])) {
    $check = getimagesize($_FILES["fileToUpload"]["tmp_name"]);
    if($check !== false) {
    echo "File is an image - " . $check["mime"] . ".";
    $uploadOk = 1;
    } else {
    echo "File is not an image.";
    $uploadOk = 0;
    }
}
// Check if file already exists
if (file_exists($target_file)) {
    echo "Sorry, file already exists.";
    $uploadOk = 0;
}
// Check file size
if ($_FILES["fileToUpload"]["size"] > 500000) {
    echo "Sorry, your file is too large.";
    $uploadOk = 0;
}
// Allow certain file formats
if($imageFileType != "jpg" && $imageFileType != "png" && $imageFileType != "jpeg"
&& $imageFileType != "gif" ) {
    echo "Sorry, only JPG, JPEG, PNG & GIF files are allowed.";
    $uploadOk = 0;
}
// Check if $uploadOk is set to 0 by an error
if ($uploadOk == 0) {
    echo "Sorry, your file was not uploaded.";
// if everything is ok, try to upload file
} else {
    if (move_uploaded_file($_FILES["fileToUpload"]["tmp_name"], $target_file)) {
    echo "The file ". basename( $_FILES["fileToUpload"]["name"]). " has been uploaded.";
    } else {
    echo "Sorry, there was an error uploading your file.";
    }
}
?>
Другие вопросы по тегам