我想实现uploadify在一个asp.net MVC视图的checkscript功能,但我不能确定,关键是什么,我应该使用在控制器端。下面是PHP脚本,但我不是很熟悉PHP并不能确定是什么PHP是刮出来的HttpRequest的。有没有人来实现这一点?该文档是有点稀疏(如在不存在的)。

$fileArray = array();
foreach ($_POST as $key => $value) {
    if ($key != 'folder') {
        if (file_exists($_SERVER['DOCUMENT_ROOT'] . $_POST['folder'] . '/' . $value)) {
            $fileArray[$key] = $value;
        }
    }
}
echo json_encode($fileArray);
?>
有帮助吗?

解决方案

下面是任何搜索解决方案。基本上uploadify脚本发送的文件的名称和它所产生的形式收集的唯一关键。您可以通过allkeys迭代得到它。下面迭代控制器行动,通过形式allkeys集,如果密钥没有文件夹(文件夹uploadify参数也通过在formscollection为scriptCheck)它会检查,看看是否该文件已经存在。如果确实存在的键和值添加到字典中,然后返回给客户端。然后uploadify插件会提醒该文件存在的用户,并给他们一个机会,取消上传。希望这可以帮助别人了。

public ActionResult FileExists(FormCollection forms)
    {
        Dictionary<string,string> fileArray = new Dictionary<string,string>();

        foreach (string key in forms.AllKeys)
        {
            if (key != "folder")
            {
                string targetDirectory = Path.Combine(Request.PhysicalApplicationPath, @"uploads\documents\");
                string targetFilePath = Path.Combine(targetDirectory, forms[key]);
                if (System.IO.File.Exists(targetFilePath)) fileArray.Add(key, forms[key]);
            }
        }

        return Json(fileArray);
    }
许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top