sql >> データベース >  >> RDS >> Mysql

javaを使用して長いblob(画像)をmysqlデータベースにアップロードし、phpで取得するにはどうすればよいですか?

     /**
    *Get profile_pic*/
    public function callmethod($userId){
    $stmt = $this->conn->prepare("SELECT profile_pic FROM users WHERE unique_id=?");
    $stmt->bind_param('s',$userId); 
    //$result = mysql_query($query) or die(mysql_error()); 
    //$photo = mysql_fetch_array($result); 
    $stmt->execute();
    $stmt->store_result();
    $stmt->bind_result($profile_pic);
    while ($stmt->fetch()) {
        echo "<img src='data:image/jpeg;base64,".$profile_pic."' />";
    }
     //$obj->picture = base64_encode($profile_pic);
    //echo $obj;
    
    
    }
    

    このコードを試してみてください。header("Content-Type: image/jpeg");は必要ありません。 関数。これはあなたのphpコードのエラーです。このコードは、basc64でimgタグを作成します。

    今アンドロイド部分のために。

    これをphpで変更します。

    while ($stmt->fetch()) {
        echo "<img src='data:image/jpeg;base64,".$profile_pic."' />";
    }
    

    while ($stmt->fetch()) {
        echo $profile_pic;
    }
    

    これがAndroidの一部になります。

    byte[] decodedString = Base64.decode(strBase64, Base64.DEFAULT);
    Bitmap decodedByte = BitmapFactory.decodeByteArray(decodedString, 0, decodedString.length); 
    image.setImageBitmap(decodedByte);
    



    1. SQLクエリでOracleスキーマサイズを表示するにはどうすればよいですか?

    2. MySQLのテーブルをクリーンアップするには、削除、切り捨て、またはドロップします

    3. あるテーブルの条件の結果を選択し、それを別のテーブルに表示するためのMYSQLクエリ

    4. SQLの重複を削除し、それに応じて関係テーブルを変更します