通过安卓工作室将图片上传到000webhost.com



所以我试图将我的android工作室连接到这个web服务器(000webhost(,但似乎无法成功上传,我认为问题是路径,但我还没有在网上找到一些关于如何连接到000webhost 的文件管理器的示例

connection.php

header('Content-type : bitmap; charset=utf-8');
if(isset($_POST["encoded_image"])){
$encoded_image = $_POST["encoded_image"];
$image_name = $_POST["image_name"];
$decoded_string = base64_decode($encoded_image);
$path = 'images/'.$image_name;
$file = fopen($path,'wb');
$is_written = fwrite($file,$decoded_string);
fclose($file);
if($is_written > 0){
$connection = mysqli_connect('localhost','id7794597_razzlesz','hahayz9090','id7794597_memes');
$query = "INSERT INTO photos (name,path) values ('$image_name','$path');";
$result = mysqli_query($connection, $query);
if($result){
echo "success";
}else{
echo "failed";
}
mysqli_close($connection);
}
}

?>

btUnpload

btnUpload.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
StringRequest stringRequest = new StringRequest(Request.Method.POST, urlUpload, new Response.Listener<String>() {
@Override
public void onResponse(String response) {
}
}, new Response.ErrorListener() {
@Override
public void onErrorResponse(VolleyError error) {

}
}){
@Override
protected Map<String, String> getParams() {
Map<String, String> params = new HashMap<>();
String imageData = imageToString(bitmap);
String imgName = edtName.getText().toString();
params.put ("encoded_image", imageData);
params.put ("image_name", imgName);
return params;
}
};
RequestQueue requestQueue = Volley.newRequestQueue(MainActivity.this);
requestQueue.add(stringRequest);
Toast.makeText(getApplicationContext(),"image uploaded!", Toast.LENGTH_LONG).show();
}
});

我的数据库

我应该在php的路径上放什么?

他的问题似乎是目录路径。000webhost有不同的目录路径,正如我所理解的。如果应用程序中没有错误消息,那么它必须是路径目录,因为它已经在联机数据库中。

最新更新