当前位置: 首页 > 知识库问答 >
问题:

文件名不能为空

佘辰龙
2023-03-14

我每次点击提交按钮都会出现这个错误。其他所有内容都提交到数据库,只有图像没有提交。警告:file\u get\u contents():文件名不能为空。你知道吗?这是我的密码。

if(isset($_POST['consultationbutton'])){        
    $image = addslashes(file_get_contents($_FILES['selectedfile']['tmp_name'])); //SQL Injection defence!
    $image_name = addslashes($_FILES['selectedfile']['name']);
    $checkedcondition = implode(",",$_POST['skincondition']);
    $checkedproduct = implode(",",$_POST['skincareinuse']);
    $consultquery="INSERT INTO counsel(nric,dateconsulted,editableface,skincarecurrentlyinuse,skincondition,imagename) VALUES('132','$_POST[storedate]','{$image}','$checkedproduct','$checkedcondition','{$image_name}')";
    mysqli_query($dbconn,$consultquery);
   // mysqli_escape_string($dbconn,$image);
    echo $checkedcondition;
    echo $checkedproduct;
}   

<form action="BAConsult.php" enctype="multipart/form-data" method='post'>
<img id="customerface" src="#" alt="your image" class ="consultimg"></img>
 Select a file to upload: <input type="file" name="selectedfile" onchange="readURL(this);">
<input type='submit' name='consultationbutton' class='consultationbutton' value='Complete Consultation' onclick='submitclick();'>
</form>

<script>
function readURL(input) {
    if (input.files && input.files[0]) {
        var reader = new FileReader();

        reader.onload = function (e) {
            $('#customerface')
                .attr('src', e.target.result)
                .width(400)
                .height(400);
        };

        reader.readAsDataURL(input.files[0]);
    }
}
</script>

共有2个答案

温成济
2023-03-14

确保在您的中添加了enctype="Multipart/form-data"属性。

<form action="your_action_file" method="post" enctype="multipart/form-data">
居晗日
2023-03-14

$\u文件数组中,您说您将获得[name]=

如果未给出tmp_name,则表示文件未上载。

给出的错误是1,根据上传错误消息解释页面,这意味着:上传的文件超过了php.ini中的upload\u max\u filesize指令。

您可以执行以下操作来修复此问题。

  • 找到您的php.ini文件,并增加upload\u max\u filesize

 类似资料:
  • 我是php新手。我用php制作了一个简单的上传表单。这是我的密码。 它工作正常。但是如果我在没有附加文件的情况下按下提交键,它会显示错误,警告:file_get_contents():第20行的C:\xampp\htdocs\契约db\filetest.php中的文件名不能为空。 我希望上传文件是可选的,因为不是每个用户都有附加的文件。我还希望用户在上传后下载文件而不删除file_get_cont

  • 每当我试图上传一个图像,它就会显示这个错误 警告::文件名不能为空 我的代码是:

  • 我试图为我的评估做一个要求,即“在某种形式上,如果用户上传1个或多个图像,这些图像和其他输入信息需要存储在数据库中。如果用户选择不上传任何图像,其他输入信息需要存储在数据库中。” 这是我用我的方式做时得到的结果但它并不完美 警告:文件\u get\u contents():第178行C:\xampp\htdocs\WEB Assignment\phpserver.php中的文件名不能为空 这就是我

  • 本文向大家介绍浅谈php中fopen不能创建中文文件名文件的问题,包括了浅谈php中fopen不能创建中文文件名文件的问题的使用技巧和注意事项,需要的朋友参考一下 之前网页的chartset用的是utf-8,文件也用utf-8,然后用fopen()创建一个中文文件名的文件时问题就出来了,文件名都是乱 码! 查看了很多文档试了不少方法都解决不了,本来想着用别的方法绕过这个问题,忽然脑子里闪过Wind

  • 我有一个方法,它接受源地址、目标地址和,然后它通过giver source文件夹,用ArrayList项检查每个文件,如果它们有相同的名称,那么它就用完全相同的文件夹结构复制目标(因此它需要文件夹)。在这里之前一切都有效。但如果ArrayList的项是文件夹名,则会出现错误。有些怎么找不到那个文件夹,然后出现错误。 在我的另一个mathchine中,我得到了同样的错误,但它是而不是。 所以任何让它

  • 问题内容: 经过一整天的研究和尝试,我终于放弃了 纯AJAX的 上传文件(ps:本文如何与JQuery异步上传文件?埋了我的最后希望) 我的问题可能没什么意义,但是我仍然想知道为什么ajax(或XMLHttpRequest)不能处理这个问题?为什么文件不能像真正的httprequest那样传输? 问题答案: 出于安全原因,JavaScript无法读取本地文件,因此我们无法使用AJAX发送数据。 但