Я создаю форму, которая захватывает данные пользователя и изображение профиля, я программирую это в jquery ui (модальная форма) и отправляя jquery ajax post, на стороне сервера (PHP5.2) нужно получить значение переменной $ _File и другие значения имени пользователя, электронной почты, пароля, хорошо, моя проблема заключается в доставке данных и изображений. Я надеюсь, что вы меня поняли, и я могу помочьКак отправить данные на сервер с изображением?
Код HTML
<div id="dialog-form" title="Create new user">
<p class="validateTips">
All form fields are required.</p>
<form id="formulario">
<fieldset>
<label for="name">
Name</label>
<input type="text" name="name" id="name" class="text ui-widget-content ui-corner-all" />
<label for="email">
Email</label>
<input type="text" name="email" id="email" value="" class="text ui-widget-content ui-corner-all" />
<label for="password">
Password</label>
<input type="password" name="password" id="password" value="" class="text ui-widget-content ui-corner-all" />
</fieldset>
<div id="content-image-user">
<div id="imageuser"></div>
</div>
<div class="ui-widget"><label for="photo">Photo: </label><input type="file" name="photo" class="ui-autocomplete-input ui-widget-content ui-corner-all"></div>
</form>
</div>
КОД JS
$("#dialog-form").dialog({
autoOpen: false,
height: 620,
width: 480,
modal: true,
buttons: {
"Create an account": function() {
//allFields.removeClass("ui-state-error");
var info = $("#formulario").serialize();//
//Here!!
// How data gathering more data in the image?
console.log(info);
$.post("AddUser.php", info, function(data) {
console.log(data);
$('#grid-data').load("GridData.php", function() {
//console.log('load data OK');
});
});
$(this).dialog("close");
},
Cancel: function() {
$(this).dialog("close");
}
},
close: function() {
//allFields.val("").removeClass("ui-state-error");
}
});
приветы благодаря MauricioHz Сантьяго, Чили
Ajax не может сделать загрузку файлов. Стандартное обходное решение - клонировать вашу форму в скрытый iframe и выполнять обычную загрузку на основе POSt: http://www.php.net/manual/en/features.file-upload.post-method.php –
Вы можете Не загружайте файлы через AJAX. Вам нужно использовать iFrame, Flash или xmlhttprequest2 –
Отправьте свой код 'AddUser.php', чтобы мы могли видеть, что делает PHP, обрабатывающий запрос AJAX. Кроме того, вы можете просто загрузить изображение на сервер, а затем отправить ссылку в запросе AJAX. В противном случае вы будете хранить изображение в базе данных как двоичную, а не файловую систему. – Ennui