繁体   English   中英

使用PHP里面的文件和html文件上传文件

[英]Upload a file using PHP inside and html document

我正在尝试编写 php 以便在 html 文档中插入图片(或文件)。 我的代码如下,但我似乎无法上传图片。 这是表单验证项目的一部分。 我到目前为止的代码如下。

<article>
    <figure>

<?php
if(isset($_POST['submit'])){

    $file = $_FILES['file'];
    $file_name = $_FILES['file']['name'];
    $file_type = $_FILES['file']['type'];
    $file_size = $_FILES['file']['size'];
    $file__temp_name = $_FILES['file']['tmp_name'];
    $file_error = $_FILES['file']['error'];

    $fileExt = explode('.', $file_name);
    $fileActualExt = strtolower(end($fileExt));

    $allowed = array('jpg', 'jpeg', 'png');

    echo '<img src="uploads/'.$file_name.'"/>';

    if (in_array($fileActualExt, $allowed)){
        if ($file_error === 0){
            if ($file_size < 1000000){
                $file_name_new = uniqid('', true).".".$fileActualExt;
                $file_destination = 'uploads/'.$file_name_new;
                move_uploaded_file($file__temp_name, $file_destination);

            } else {
                echo "Your file is too big!";
            }
        } else {
            echo "There was an error uploading your file!";
        }
    } else {
        echo "You cannot upload files of this type";
    }
}
?>
    </figure>
</article>


<div id="form">
...
<form enctype="multipart/form-data" method="POST" action="http://localhost/form.php">

    <input type="file" name="file">
    <button type="submit" name="submit">Upload</button>
    <p style="font-size: small ; margin-bottom: 10px ; margin-top: 5px">Browse for a photo</p>

...

如果你这样做

echo '<img src="uploads/'.$file_name.'"/>';

在你做这件事之前

move_uploaded_file($file__temp_name, $file_destination);

那么那里将找不到任何图像!

所以在 move_uploaded_file() 之后向下移动这一行并在src=属性中使用正确的文件名

echo '<img src="uploads/'.$file_name_new.'"/>';

或者使用您创建的带有完整路径的变量

echo "<img src='$file_destination'/>";

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM