0

Android Mobile Programming の mysql データベースに画像ファイルをアップロードしたいのですが、問題があります。これが私のコードです:

Eclipse での私のコード:

private void uploadFile() {
    // TODO Auto-generated method stub
    String nama = getIntent().getStringExtra("user");
    Bundle fieldresults = this.getIntent().getExtras();
    Filepath = fieldresults.getString("bitmap");

    Bitmap bitmapOrg= BitmapFactory.decodeFile(Filepath);
    ByteArrayOutputStream bao = new ByteArrayOutputStream();
    bitmapOrg.compress(Bitmap.CompressFormat.JPEG, 90, bao);
    byte [] ba = bao.toByteArray();
    String ba1=Base64.encodeBytes(ba);
    ArrayList nameValuePairs = new
    ArrayList();
    nameValuePairs.add(new BasicNameValuePair("image",ba1));
    nameValuePairs.add(new BasicNameValuePair("filename",Filepath));
    nameValuePairs.add(new BasicNameValuePair("username_user",nama));
    try{
    HttpClient httpclient = new DefaultHttpClient();
    HttpPost httppost = new
    HttpPost("http://10.0.2.2/BloodGlucose/uploadImage.php");
    httppost.setEntity(new UrlEncodedFormEntity(nameValuePairs));
    HttpResponse response = httpclient.execute(httppost);
    HttpEntity entity = response.getEntity();
    is = entity.getContent();
    }catch(Exception e){
    Log.e("log_tag", "Error in http connection "+e.toString());
    }
}

そして私のPHPコード:

    <?php
include_once("koneksi.php");

$username = $_REQUEST['username_user'];


$hasil = mysql_query("select * from login"); 

$base = $_REQUEST['image'];
$filename = $_ReQUEST['filename']
$buffer=base64_decode($base);
$path = "img/".$filename.".jpg";
$handle = fopen($path, 'wb');
$numbytes = fwrite($handle, $buffer);
fclose($handle);
$conn=mysql_connect("localhost","root","");
mysql_select_db("db_bloodglucose");

$sql = "UPDATE login SET file = '" . $path . "' Where username_user = $username;
$r=mysql_query($sql);

?>

問題は、ファイルが私のデータベース (mysql) に表示されなかったことです。誰か助けてくれませんか? 前にありがとう

よろしくお願いします

4

2 に答える 2

1

$sql が間違っているように見えます。試してください:

$sql = "UPDATE login SET file = '$path' WHERE username_user = '$username'";
$r = mysql_query($sql);
于 2012-06-28T08:59:44.763 に答える
0

この行

$sql = "UPDATE login SET file = '" . $path . "' Where username_user = $username; $r=mysql_query($sql); 

読むべき

$sql = "UPDATE login SET file = '" . $path . "' Where username_user = " . $username; $r=mysql_query($sql); 
于 2012-06-28T08:56:38.940 に答える