Я пытаюсь использовать Uploadify для загрузки моего файла в Symfony2. Загрузка изображения должна вызывать контроллер, внутри контроллера он будет получать текущего пользователя входа, создавать подкаталоги на основе текущего имени пользователя, а затем переместить файл в эту папку. Проблема в том, что когда я запускаю $ user-> getUsername() или любые другие функции, связанные с объектом $ user, загрузка не выполняется с ошибкой HTTP 500, однако все работает нормально, когда я запускаю этот контроллер из URL.Symfony2 получает ошибку HTTP 500 при вызове Ajax
Вот код:
конфигурации Frontend для Uploadify:
<script type="text/javascript">
$(document).ready(function() {
$('#fileupload').uploadify(
{
'swf': "{{ asset('javascript/uploadify.swf') }}",
'uploader': "{{ path('EasyLife_upload_avatar')}}",
'auto': true,
'buttonText': "Upload Avatar",
"buttonClass": "label",
"height": 30,
"width": 80,
"onUploadSuccess": function(file, data, response) {
alert("Successful " + file.name + " to :" + data + ":" + response);
},
'onUploadError' : function(file, errorCode, errorMsg, errorString) {
alert('The file ' + file.name + ' could not be uploaded: ' + errorString);
}
});
});
</script>
Вот контроллер, который обрабатывает загрузку:
public function uploadAvatarAction() {
$user = $this->getUser();
$user->getUsername(); // problem appears when this line is added on an Ajax call
$targetFolder = "upload/avatar";
return new Response($targetFolder);
}
Я на самом деле есть $ user-> GetUserName() все над проектом в других контроллерах, все они хороши, даже этот работает на прямой URL-вызов, но проблема возникает при вызове Ajax, как странно?
Может ли кто-нибудь помочь? Большое спасибо!
Джеймс, вы легенда! Это именно та проблема, с которой я столкнулся! я сделал это, чтобы получить имя пользователя в шаблоне TWIG и передать его в вызов Ajax в качестве параметра ('formData', специфичный здесь для Uploadify), он работает как шарм! Благодаря! – woodnwest