【发布时间】:2016-11-17 07:48:17
【问题描述】:
<select name="select1">
<option>
Demo1
</option>
</select>
<select name="select2">
<option>
Demo1
</option>
</select>
我有两个选择框,我想将值发送到上传处理程序并插入到数据库中。
编辑:
我从两个输入字段插入值(它工作正常!),但我想获取选择框的值。
查询表单数据:
$(function () {
$('#fileupload').fileupload({
dataType: 'json',
add: function (e, data) {
data.context = $('<button class="btn btn-primary"/><br/><br/>').text('Upload')
.appendTo($( ".container" ))
.click(function () {
data.context = $('<p/>').text('Uploading...').replaceAll($(this));
data.submit();
});
},
done: function (e, data) {
$.each(data.result.files, function (index, file) {
$('<li class="list-group-item"/>').text(file.name).appendTo($( ".container" ));
});
data.context.text('Upload finished.');
}
}).bind('fileuploadsubmit', function (e, data) {
data.formData = {
'title': $('[name=title\\[\\]]').val(),
'description': $('[name=description\\[\\]]').val()
};
});
});
还有输入字段。
<label class="title">
<span>Title:</span><br>
<input name="title[]" class="form-control">
</label>
<label class="description">
<span>Description:</span><br>
<input name="description[]" class="form-control">
</label>
这是 blueimp 中的 UploadHandler.php 插入数据的方式。
protected function handle_form_data($file, $index) {
$file->title = $_REQUEST['title'];
$file->description = $_REQUEST['description'];
}
protected function handle_file_upload($uploaded_file, $name, $size, $type, $error,
$index = null, $content_range = null) {
$file = parent::handle_file_upload(
$uploaded_file, $name, $size, $type, $error, $index, $content_range
);
if (empty($file->error)) {
$sql = 'INSERT INTO `'.$this->options['db_table']
.'` (`name`, `size`, `type`, `title`, `description`)'
.' VALUES (?, ?, ?, ?, ?)';
$query = $this->db->prepare($sql);
$query->bind_param(
'sisss',
$file->name,
$file->size,
$file->type,
$file->title,
$file->description
);
$query->execute();
$file->id = $this->db->insert_id;
}
return $file;
}
【问题讨论】:
-
?
标签: php jquery file-upload blueimp