errro

wmtdaxz3  于 2021-06-20  发布在  Mysql
关注(0)|答案(1)|浏览(160)

我正在从手机图库上传一张图片到我的数据库。我将图片的base64字符串发布到服务器上。

<?php 

 define('DB_HOST', 'localhost');
 define('DB_USER', 'root');
 define('DB_PASS', '');
 define('DB_NAME', 'sample_userdata');

 //connecting to database and getting the connection object
 $conn = mysqli_connect(DB_HOST, DB_USER, DB_PASS, DB_NAME);

if($conn)
{
    $image=$_POST["image"];
    $uploadpath="uploads/profilepic.jpg";
    if(isset($image)){
        if(file_put_contents($uploadpath,base64_decode($image))){
        echo json_encode(array('response'=>'Image Uploaded successfully'));}

    }else{
        echo json_encode(array('response'=>'Image upload failed'));
    }
}else{

echo json_encode(array('response'=>'Image upload failed 2'));}
mysqli_close($conn);
?>

图像被成功地保存在uploads文件夹中,android logcat正在显示响应
d/response:{“response”:“图片上传成功”}
但是包含代码的localhost/profilepic.php显示了注意事项:
未定义索引:c:\xampp\htdocs\profilepic.php第13行的image{“response”:“image upload failed”}
问题是,图像成功地存储在uploads文件夹中,android给出了成功消息,但是localhost页面给出了错误消息。

alen0pnh

alen0pnh1#

从浏览器点击url时 localhost/profilepic.php 是get方法。代码是通过post请求的例外图像。
您可以添加检查来验证请求,以避免出现此警告消息。
在文件顶部添加以下代码,以检查图像是否随请求一起发送

if( !isset($_POST["image"]) || empty($_POST["image"])
{
    echo json_encode(array('response'=>'Image is required'));
    exit();
}

相关问题