我试图让DropzoneJS工作,我走得很远,但似乎我遇到了一个我无法解决的问题。
基本上我想要的是上传文件并在同一页面内获取下载链接。
所以我把这段代码添加到我的index.php:
<form action="index.php" class="dropzone" id="my-awesome-dropzone"></form>
将php代码放入index.php:
<?php
include('config.php');
if($_SERVER['REQUEST_METHOD'] == 'POST') {
$dirname = uniqid();
mkdir( $filedir.'/'.$dirname);
mkdir( $filedir.'/'.$dirname.'/file');
copy("template/d.php", "d/$dirname/index.php");
copy("template/dl.php", "d/$dirname/dl.php");
preg_match('/\.([a-zA-Z0-9]+?)$/', $_FILES['file']['name'], $matches);
if(in_array(strtolower($matches[1]), $accepted)) {
if($_FILES['file']['size'] <= $maxsize) {
$newname = ($_FILES['file']['name']);
// file name encryption
//$newname = md5_file($_FILES['file']['tmp_name']).'.'.$matches[1];
move_uploaded_file($_FILES['file']['tmp_name'], $filedir.'/'.$dirname.'/file/'.$newname);
$linkurl = 'http://'.$_SERVER['HTTP_HOST'].preg_replace('/\/([^\/]+?)$/', '/', $_SERVER['PHP_SELF']).'#'.$newname;
$imgurl = 'http://'.$_SERVER['HTTP_HOST'].preg_replace('/\/([^\/]+?)$/', '/', $_SERVER['PHP_SELF']).$filedir.'/'.$dirname.'/file/'.$newname;
$alt = $_POST["alt"];
$dlurl = 'http://'.$_SERVER['HTTP_HOST'].preg_replace('/\/([^\/]+?)$/', '/', $_SERVER['PHP_SELF']).$filedir.'/'.$dirname;
print '<h2>Picture Uploaded Successfuly!!!!</h2> <p id="codes">
<img src="'.$imgurl.'" height="300" alt="Uploaded Picture" >
<label for="codebb">BBCode:</label>
<input type="text" id="codebb" value="[URL='.$siteurl.'][IMG]'.$dlurl.'[/IMG][/URL]" onclick="javascript:this.focus();this.select();" readonly="true" /><br />
<label for="codehtml">HTML Code: </label>
<input type="text" id="codehtml" value=\'<a href="'.$siteurl.'"><img src="'.$dlurl.'" alt="'.$alt.'" /></a>\' onclick="javascript:this.focus();this.select();" readonly="true" /><br />
<label for="codedirect">Direct Link:</label>
<input type="text" id="codedirect" value="'.$dlurl.'" onclick="javascript:this.focus();this.select();" readonly="true" /></p>';
echo ".$newname";
} else
print '<p>Sorry, Max Picture size is 10Mb</p>';
}
}
?>
当我上传文件时,php正常工作并且文件已成功上传到其文件夹中,因此php正在运行。
我现在的问题是为什么我不从php脚本中获取打印件。
完全正常工作的脚本:
http://37.34.62.131/test/uploader%201.0/
没有工作新脚本:
http://37.34.62.131/test/
我认为它与上传者有关,因为我的旧脚本使用了提交按钮而我的新版本使用了自动提交。
我非常感谢你的时间!