上傳功能整個重寫