我正在使用PHP和corona sdk(Lua)创建一个社交应用程序(类似于Instagram)。用户选择的一个选项是从手机上传图片并将其用作其帐户中的个人资料图片。
我不知道如何将图片上传到应用所在文件夹中的文件夹,然后在用户个人资料中显示该图片。我看过教程,但他们没有帮助我。有人可以帮忙吗?
答案 0 :(得分:1)
你的问题描述太广了。具体说明你的问题。我想你要求从Corona SDK上传图像作为你的问题标题。
以下是从Corona SDK上传到服务器的图片。
1 - 从图库中选择图像。
-- Selection completion listener
local function onComplete( event )
local photo = event.target
if photo then
print( "photo w,h = " .. photo.width .. "," .. photo.height )
end
end
local button = display.newRect( 120, 240, 80, 70 )
local function pickPhoto( event )
media.selectPhoto(
{
mediaSource = media.SavedPhotosAlbum,
listener = onComplete,
origin = button.contentBounds,
permittedArrowDirections = { "right" },
destination = { baseDir=system.TemporaryDirectory, filename="image.jpg" }
})
end
button:addEventListener( "tap", pickPhoto )
的电晕文档
2 - 将图像上传到服务器。
您需要将MultipartFormData库添加到项目中。这是Link
然后
local MultipartFormData = require("class_MultipartFormData")
local multipart = MultipartFormData.new()
local path=system.pathForFile( "image.jpg", system.TemporaryDirectory )
multipart:addFile("Image", path, "image/jpg", "image.jpg")
local params = {}
params.body = multipart:getBody()
params.headers = multipart:getHeaders() -- Headers not valid until getBody() is called.
network.request("https://your.server.url/services/imageupload?parameter=1", "POST", listener, params)
你可以在a之后将参数传递给url。检查网址。