Php 如何将图像上载到主机?

Php 如何将图像上载到主机?,php,Php,我想用android向服务器发送信息。我编写了一个web服务,但未工作,并返回以下错误: 无法打开流 在android studio中,图像转换为字符串B64并发送到web服务。然后,在web服务中对图像进行解码。有时返回此回音: 数据为空 我怎样才能解决这个问题 我的PHP代码(Web服务): 显示您可能遇到的异常情况catch(异常$e){echo$e;}您确定在服务器端的POST变量映像中有正确的映像数据吗?并检查您的服务器应用程序是否有权限在您指定的路径上进行写入。@GugaNemsit

我想用android向服务器发送信息。我编写了一个web服务,但未工作,并返回以下错误:

无法打开流

在android studio中,图像转换为字符串B64并发送到web服务。然后,在web服务中对图像进行解码。有时返回此回音:

数据为空

我怎样才能解决这个问题

我的PHP代码(Web服务):


显示您可能遇到的
异常情况
catch(异常$e){echo$e;}
您确定在服务器端的POST变量映像中有正确的映像数据吗?并检查您的服务器应用程序是否有权限在您指定的路径上进行写入。@GugaNemsitsveridze无异常@DaszuOne我尝试使用PostMan和set-POST方法将数据发送到服务器。您的文件的目标目录是否与web服务位于同一主机上?如果是,则应使用绝对路径或相对路径作为
文件内容的第一个参数。如果没有,您应该查看此处显示您可能遇到的
异常
catch(异常$e){echo$e;}
您确定在服务器端的POST变量映像中有正确的映像数据吗?并检查您的服务器应用程序是否有权限在您指定的路径上进行写入。@GugaNemsitsveridze无异常@DaszuOne我尝试使用PostMan和set-POST方法将数据发送到服务器。您的文件的目标目录是否与web服务位于同一主机上?如果是,则应使用绝对路径或相对路径作为
文件内容的第一个参数。如果没有,你应该看看这里
<?php

require_once('conn.php');

$upload_path = '../user_images/';
$server_ip = gethostbyname(gethostname());
$upload_url = 'http://' . $server_ip . '/' . $upload_path;

if ($_SERVER['REQUEST_METHOD'] == 'POST') {
    if (isset($_POST['name']) and isset($_POST['phone'])
        and isset($_POST['image']) and isset($_POST['email'])
        and isset($_POST['password'])) {

        $name = $_POST['name'];
        $phone = $_POST['phone'];
        $email = $_POST['email'];
        $password = $_POST['password'];
        $image_address = "http://MY_HOST/game/user_images/" . 'IMG_' . $phone . '.png';


        if (upload_file($_POST['image'], $phone)) {

            $sql = "insert into users (phone,name,picture,email,password) values ('$phone','$name', '$image_address' ,'$email','$password')";

            if (mysqli_query($con, $sql)) {

                echo json_encode(array('status' => 1, 'message' => "information saved"));
            } else

                echo json_encode(array('status' => 0, 'message' => "error in connection with database"));

        } else
            echo json_encode(array('status' => 0, 'message' => "error in upload image"));


    } else echo json_encode(array('status' => 0, 'message' => "DATA EMPTY"));
}

function upload_file($encoded_string, $phone)
{
    $decoded_file = base64_decode($encoded_string);
    $file_dir = "http://MY_HOST/game/user_images/" . 'IMG_' . $phone . '.png';
    try {
        if (file_put_contents($file_dir, $decoded_file))
            return true;
        else return false;
    } catch (Exception $e) {
        return false;
    }
} ?>