我需要为用户名使用会话变量来指定uploadify(版本3.1)中的上传路径。在 uploadifive.php 中使用以下方法可以正常工作:
$uploadDir = 'media/' . $_SESSION["user_name"] . '/';
但是在uploadify中,当我使用相同的代码时,文件只是上传到媒体文件夹(忽略用户文件夹)。我已经在uploadify.php 中回显了$_SESSION["user_name"] 并使用onUploadSuccess 函数检索了它,并且确实用户名变量没有被传递给uploadify.php,尽管开始了会话。
这似乎很奇怪,这适用于uploadifive 而不是uploadify。我对 PHP 不太了解,很高兴能得到一些帮助。
我在下面包含了完整的 uploadify.php 脚本。
谢谢,
缺口
<?php
session_start();
/*
Uploadify
Copyright (c) 2012 Reactive Apps, Ronnie Garcia
Released under the MIT License <http://www.opensource.org/licenses/mit-license.php>
*/
// Define a destination
$targetPath = 'media/' . $_SESSION["user_name"] . '/';
if (!empty($_FILES)) {
$tempFile = $_FILES['Filedata']['tmp_name'];
$targetFile = $targetPath . $_FILES['Filedata']['name'];
// Validate the file type
$fileTypes = array('jpg','jpeg','gif','png'); // File extensions
$fileParts = pathinfo($_FILES['Filedata']['name']);
if (in_array($fileParts['extension'],$fileTypes)) {
move_uploaded_file($tempFile,$targetFile);
echo '1';
} else {
echo 'Invalid file type.';
}
}
?>