简体   繁体   中英

php: file load with "enctype="multipart/form-data"" not working

I am noob at php/html. I am trying to load a file but my code dont work, always gives error. php:

<?php if(isset($_POST["upload"])){ ?>
    <div class="col-md-12"> <?
        $target_file= "firmware/". basename($_FILES["fileToUpload"]["name"]);
        if (move_uploaded_file($_FILES["fileToUpload"]["tmp_name"], $target_file)) {
            echo "file". basename( $_FILES["fileToUpload"]["name"]). " loeded";
        } else {
            echo "Error";
        } ?>
    </div>
<? } ?>

Not working html:

<div class="col-sm-12">
     <div class="row">
        <form method="post" action="?s=firmware" enctype="multipart/form-data" ><div class="col-sm-6">
                <div class="form-group">
                    <input type="file" name="fileToUpload" id="fileToUpload" class="form-control">
                </div></div>
                <div class="col-sm-5">
                <div class="form-group">
                    <button type="submit" name="upload" value="upload" class="btn btn-primary">Upload</button>
                </div></div>
        </form>
    </div>
</div>

When I put another form, it is working:

<div class="col-sm-12">
     <div class="row">
        <form method="post" action="?s=firmware" enctype="multipart/form-data" ><div class="col-sm-6">
         </form>
       <form method="post" action="?s=firmware" enctype="multipart/form-data" ><div class="col-sm-6">
                <div class="form-group">
                    <input type="file" name="fileToUpload" id="fileToUpload" class="form-control">
                </div></div>
                <div class="col-sm-5">
                <div class="form-group">
                    <button type="submit" name="upload" value="upload" class="btn btn-primary">Upload</button>
                </div></div>
        </form>
    </div>
</div>

Can you please help me to solve it?

Please have a look. You made a mistake in the PHP tag.

<?php if(isset($_POST["upload"])){ 
// Desired directory structure
$structure = './firmware';

// to mkdir() must be specified.
if (!file_exists($structure)) {
    mkdir($structure, 0777, true);
}
?>
<div class="col-md-12"> <?php
$target_file= "firmware/". basename($_FILES["fileToUpload"]["name"]);
if (move_uploaded_file($_FILES["fileToUpload"]["tmp_name"], $target_file)) {
    echo "file". basename( $_FILES["fileToUpload"]["name"]). " loeded";
} else {
    echo "Error";
}
} ?>
</div>
<div class="col-sm-12">
<div class="row">
<form method="post" action="?s=firmware" enctype="multipart/form-data" ><div 
class="col-sm-6">
    <div class="form-group">
        <input type="file" name="fileToUpload" id="fileToUpload" 
       class="form-control">
        </div></div>
        <div class="col-sm-5">
        <div class="form-group">
            <button type="submit" name="upload" value="upload" 
            class="btn btn-primary">Upload</button>
        </div></div>
</form>

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

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