Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/55.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 上载到新创建的目录_Php_Mysql_Session_Mkdir_Subdirectory - Fatal编程技术网

Php 上载到新创建的目录

Php 上载到新创建的目录,php,mysql,session,mkdir,subdirectory,Php,Mysql,Session,Mkdir,Subdirectory,我有一个名为“文件”的目录,其中包含代表用户上载空间的文件夹,例如files/14,其中“14”是用户的用户ID 我正在尝试创建一个简单的脚本,当上传文件时,该脚本: 检查用户的文件夹是否已存在 如果用户文件夹不存在,请使用UserID创建一个,否则忽略并继续 将文件上载到新创建的目录(例如14)或上载到以前创建的用户目录 代码如下: <?php include("dbConfig.php"); $Username = $_SESSION["username"];

我有一个名为“文件”的目录,其中包含代表用户上载空间的文件夹,例如
files/14
,其中“14”是用户的用户ID

我正在尝试创建一个简单的脚本,当上传文件时,该脚本:

  • 检查用户的文件夹是否已存在
  • 如果用户文件夹不存在,请使用UserID创建一个,否则忽略并继续
  • 将文件上载到新创建的目录(例如14)或上载到以前创建的用户目录
代码如下:

<?php 
    include("dbConfig.php");
    $Username = $_SESSION["username"];
    global $userid;
    $Password = $_SESSION["password"];
    $Password = md5($Password);

    $sql = "SELECT UserID FROM users WHERE Username = '".$Username."'";

    $result = mysql_query($sql) or die(mysql_error());
    while($row = mysql_fetch_assoc($result)) {
        $userid = $row['UserID'];
    }

    $dirname =  (string)$userid;
    $filename = ("$dirname" . "/");

    if (!file_exists("../files/" .$filename)) {
        mkdir("files/$dirname", 0775);
    } else {
        if (isset($_FILES['files'])) {
            echo "<div id='files_table'><table class='center'.><tr><td>";  
            foreach($_FILES['files']['tmp_name'] as $key => $tmp_name) {
                $dest = ($filename . "{$_FILES['files']['name'][$key]}");
                move_uploaded_file($tmp_name, $dest );
                echo $_FILES['files']['name'][$key], " uploaded.", "<br>";
            }
        }
    }
?> 

有人能帮我解决这个问题吗?

两个调用使用相同的结构如何

例如:

if (!file_exists("../files/" .$filename)) {
    mkdir("../files/" .$filename, 0775);
您似乎正在检查一只手上是否存在一个文件/文件夹,并在
。/files
!=<代码>文件/


导航也是正确的,您应该停止使用相对路径。保证未来的问题。特别是如果您使用一些框架和url重写。

IMHO,我认为您应该停止在这里使用相对路径。请改用绝对路径。不要使用绝对路径!从未!在windows上,它工作,在实时网站上,在linux下,而不是!因为url是绝对的,所以它被视为非本地地址,您将无法上载或保存文件。谢谢!警告消失,但是,没有上载任何文件:(那么您可能有一些路径问题。很难使用该部分来帮助。但通常情况下,移动上载的文件需要完整路径:c:\path\to\upload\to或/var/www/path/to/upload/to
if (!file_exists("../files/" .$filename)) {
    mkdir("../files/" .$filename, 0775);