调用函数时php未识别的索引

调用函数时php未识别的索引,php,Php,您好,我正在调用一个函数将图像上载到MySQL数据库 但它一直在说未识别的索引图像 我正在用这个按钮上传图像 <input type="file" name="image" size="25" /> <input type ="submit" name = "Register_Btn" value ="Register"> 然后在pictureupload.php中有这个函数 <?php function UploadImage($link){ if ($

您好,我正在调用一个函数将图像上载到MySQL数据库 但它一直在说未识别的索引图像

我正在用这个按钮上传图像

<input type="file" name="image" size="25" />
<input type ="submit" name = "Register_Btn" value ="Register">
然后在pictureupload.php中有这个函数

<?php
function UploadImage($link){
    if ($_FILES['image']['error'] == UPLOAD_ERR_OK){
    $image = addslashes(file_get_contents($_FILES['image']['tmp_name'])); //SQL Injection defence!
    $image_name = addslashes($_FILES['image']['name']);
    $sql = "INSERT INTO `authentication` ( `image_name`,`image`) VALUES ('{$image_name}','{$image}')";
    mysqli_query($link,$sql);
    }else{
        echo'No File Chosen';
    }   
}

尝试检查您的图像是否真的上传

<?php
function UploadImage($link){
if(isset($_FILES['image']) &&!empty($_FILES['image'])){// check file is uploaded or not
    if ($_FILES['image']['error'] == UPLOAD_ERR_OK){
    $image = addslashes(file_get_contents($_FILES['image']['tmp_name'])); //SQL Injection defence!
    $image_name = addslashes($_FILES['image']['name']);
    $sql = "INSERT INTO `authentication` ( `image_name`,`image`) VALUES ('{$image_name}','{$image}')";
    mysqli_query($link,$sql);
    }
}else{
        echo'No File Chosen';
    }   
}
啊哈

忘了包括

enctype="multipart/form-data"

您是否打印了$\u文件数组并检查是否正在获取图像数据?
//SQL注入防御。不,嗯,是的,它实际上没有上传任何想法,可能是什么原因造成的?我的意思是当我按下上传按钮时,图像名称会自动出现,所以部分功能正常
enctype="multipart/form-data"