将照片上传到服务器目录Ionic-Cordova插件

时间:2020-06-16 03:11:04

标签: php ionic-framework cordova-plugins

我想将拍摄的照片上传到数据库。插入成功,所有详细信息上载到数据库,以及图片名称。但是以某种方式在我的图像文件夹中无法打开图像。它说:“看来我们不支持此文件格式”。怎么了?

这是我的php代码

<?php
    header("Access-Control-Allow-Origin: *");

    $conn = new mysqli("localhost", "root","","matawarga");
    if($conn->connect_error) {
        echo "Unable to connect, please try again";
        //die();
    }

    $postdata = file_get_contents("php://input");
    if(isset($postdata))
    {
        //$namesearch = $_POST['filter'];
        $request = json_decode($postdata);
        $userlogged = $request->usernamelogged;
        $judul = $request->judul;
        $tgl = $request->tglKejadian;
        $desc = $request->deskripsi;
        $instansi = $request->tujuan;
        $longitude = 0;
        $latitude = 0;

        $dateformat = strtotime($tgl);
        $newdateformat = date('Y-m-d', $dateformat);
        $myArr = array();
        $sql = "INSERT INTO kejadian(username,judul,deskripsi,instansi_tujuan,tanggal,longitude,latitude) VALUES (?,?,?,?,?,?,?)";
        $stmt = $conn->prepare($sql);
        $stmt->bind_param("sssssii",$userlogged, $judul, $desc, $instansi, $newdateformat,$longitude,$latitude);

        if($stmt->execute())
        {
            $idk = $stmt->insert_id;
            $image = str_replace('data:image/jpeg;base64,','', $url);
            $image = str_replace(' ', '+', $image);
            $data = base64_decode($image);
            file_put_contents('images/'.$idk.'.jpg', $data);
            $url = ".jpg";

            $sql3 = "INSERT INTO gambar_kejadian(idkejadian,extension) VALUES (?,?)";
            $stmt = $conn->prepare($sql3);
            $stmt->bind_param("is", $idk, $url);
            $stmt->execute();

$myArr['pesan'] = "Berhasil ditambahkan.";
        }
        else
        {
            $myArr['pesan'] = "Gagal" .$judul;
        }
    }
    else
    {
        $myArr['pesan'] = "Gagal" .$desc;
    }

    echo json_encode($myArr);
    $conn->close();
?>

1 个答案:

答案 0 :(得分:0)

尝试使用此bas64转换jpg

    $image = explode(";base64,", $url);
    $data = base64_decode($image[1]);
    file_put_contents('images/' . $idk . '.jpg', $data);
    $url = 'images/' . $idk . '.jpg';