我正在使用dropzone api上传图片文件(拖放)。当我上传文件时,表单会自动提交。但是我的表格中还有两个文本字段。而且我还想将上传的文件路径存储到数据库中。我怎样才能做到这一点。这是我的代码。
html, body {
width:40.5cm;
height:21.5cm;
margin:0cm;
padding:0cm;
}
@page
{
width: 40.5cm;
height: 21.5cm;
margin:0;
}
@media print {
html, body {
width: 405mm;
height: 215mm;
}
}
我的upload.php文件
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml" lang="en">
<head>
<!-- Add Dropzone -->
<link rel="stylesheet" type="text/css" href="css/dropzone.css" />
<script type="text/javascript" src="js/dropzone.js"></script>
</head>
<body>
<h1>Drag&Drop Multiple Files Upload using DropzoneJS and PHP by CodexWorld</h1>
<div class="image_upload_div">
<form action="upload.php" class="dropzone">
</form>
<input type="text" name="text1">
<input type="text" name="text2">
</div>
</body>
</html>
答案 0 :(得分:0)
以这种方式使用
<input type="file" name="file" id="file" />
<input type="submit" value="Upload Image" name="submit">
$file=$_FILES['file']['name'];
$dest="uploads/$file";
$src=$_FILES['file']['tmp_name'];
move_uploaded_file($src,$dest);
$result=mysql_query("insert into tablename(dbfieldname) values('$dest')");
&#13;
答案 1 :(得分:0)
首先,您必须创建一个div并从中删除dropzone类 表格,以阻止它附加到整个表格。
<div class="dropzone dropzone-previews dzUpload" id="my-awesome-dropzone" name = "files"></div>
然后你必须改变javascript以编程方式附加dropzone。
var dz = new Dropzone('#my-awesome-dropzone',{
url: "fileUploader.php",
...
表单提交时,您必须阻止默认操作(在本例中为表单提交。)
$('#form').on('submit', function(event) {
if(dz.getQueuedFiles().length > 0) {
event.preventDefault();
dz.processQueue();
}
});
现在,您要停止提交表单并处理队列,这会导致运行“fileUploader.php”脚本,您可以使用该脚本验证文件。
如果您对这些文件感到满意,可以将它们移动到所需的位置,然后通过将它们存储为数组并回显json_encode($ files)来返回文件名
这会在你的javascript中给你一个响应,然后你使用JSON.parse()函数将它转换为一个对象。
现在您有了响应以便将文件添加到数据库中,您可以使用隐藏属性在表单中创建额外的输入,以便用户无法看到它。然后,您可以使用jQuery将javascript中的文件名发送到表单中的隐藏输入框。
$("#hiddenInput").val(files);
如果对每个文件执行此操作,则每次都可以附加隐藏的输入。您可以使用此功能在队列完成后提交表单。
queuecomplete: function(file) {
$('#form).submit();
$('#submitButton').click();
},
现在这就像提交普通表单一样,您可以将文件名分解为数组并循环将每个文件名添加到数据库中
如果您需要任何额外的帮助,请随时与我联系,因为我的解释不是很好: - )
答案 2 :(得分:0)
<input type="file" name="file" id="file" />
<input type="submit" value="Upload Image" name="submit">
<?php
$file=$_FILES['file']['name'];
$dest="uploads/$file";
$src=$_FILES['file']['tmp_name'];
move_uploaded_file($src,$dest);
$result=mysql_query("insert into tablename(dbfieldname) values('$dest')");
?>
&#13;