簡體   English   中英

使用php將android中的base64圖像上傳到服務器時出錯

[英]errro in Uploading base64 image from android to server using php

我正在將圖像從手機庫上傳到數據庫。 我將圖像的base64字符串發布到服務器。這是我的php代碼。

    <?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 /響應:{“響應”:“圖像成功上傳”}

但是包含代碼的localhost / profilepic.php顯示了注意:

未定義的索引:第13行上的C:\\ xampp \\ htdocs \\ profilepic.php中的圖像{“響應”:“圖像上傳失敗”}

問題是什么,圖像已成功存儲在uploads文件夾中,android給出了成功消息,但localhost頁面給出了錯誤。

從瀏覽器localhost/profilepic.php URL時,是GET方法。 該代碼是通過POST請求排除的圖像。

您可以添加檢查以驗證請求,以避免出現此警告消息。

在文件頂部添加以下代碼以檢查圖像是否根據請求發送

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

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM