【发布时间】:2016-10-31 10:50:35
【问题描述】:
当我从前端发送字节 [](和图像名)时,使用当前代码,我在日志“上传失败”中收到此回显。 我的域上有一个名为“photosFolder”的现有文件夹,我尝试在其中存储我的图像及其从前端发送的图像名称。
我现在有点困惑如何完成这项工作,所以我添加了一个 move_uploaded_file,我在搜索这个问题时经常看到它。这是正确的做法吗?
这是我目前拥有的 PHP 代码。
<?php
$input = file_get_contents('php://input');
$value = json_decode($input, true);
if (!empty($value)) {
file_put_contents($value['photo_name'], base64_decode($value['photo_data']));
$image_name = $value['photo_name'];
$image_data = $value['photo_data'];
if(move_uploaded_file($image_data, "photosFolder/$image_name")) {
echo "image uploaded!";
}
else {
echo "upload failed";
}
}
?>
我像这样从前端发送我的字节 []:
static public async Task<bool> createPhotoThree(string imgName, byte[] imgData) {
var httpClientRequest = new HttpClient();
var postData = new Dictionary<string, object>();
postData.Add("photo_name", imgName);
postData.Add("photo_data", imgData);
var jsonRequest = JsonConvert.SerializeObject(postData);
HttpContent content = new StringContent(jsonRequest, System.Text.Encoding.UTF8, "application/json");
var result = await httpClientRequest.PostAsync("http://myadress.com/test.php", content);
var resultString = await result.Content.ReadAsStringAsync();
return true;
}
【问题讨论】:
-
可能是文件大小错误,请阅读:stackoverflow.com/questions/9921224/…
-
我使用域工作,但在“文件管理器”中找不到“htaccess 文件”。我是否需要与支持人员讨论您的想法并让他们更改此内容,或者 htaccess 文件是否应该存在于域文件中的某个地方?
-
你对文件夹有写权限吗?
-
如果你的意思是如果我可以制作和删除内容,比如新的 .php 文件和带有图像的文件夹,那么可以
-
var_dump(ini_get('upload_max_filesize'));给我 string(3) "96M" 所以它不是关于图像大小