Php 没有为表单中的文件创建目录

Php 没有为表单中的文件创建目录,php,mysql,forms,file-upload,Php,Mysql,Forms,File Upload,我有一个表单可以向其他用户发送消息。发送附件时,未创建要保存的目录 错误 Warning: chmod(): No such file or directory in C:\xampp\htdocs\_sesiones\validar.php on line 199 Warning: move_uploaded_file(nicogaldo/adjunto_msj/para_11/2014-09-17/mensajeria.php): failed to open stream: No suc

我有一个表单可以向其他用户发送消息。发送附件时,未创建要保存的目录

错误

Warning: chmod(): No such file or directory in C:\xampp\htdocs\_sesiones\validar.php on line 199

Warning: move_uploaded_file(nicogaldo/adjunto_msj/para_11/2014-09-17/mensajeria.php): failed to open stream: No such file or directory in C:\xampp\htdocs\_sesiones\validar.php on line 206

Warning: move_uploaded_file(): Unable to move 'C:\xampp\tmp\php120F.tmp' to 'nicogaldo/adjunto_msj/para_11/2014-09-17/mensajeria.php' in C:\xampp\htdocs\_sesiones\validar.php on line 206

nombre del archivo: nicogaldo/adjunto_msj/para_11/2014-09-17/mensajeria.php
nombre de usuario: nicogaldo 
这是要上载的文件的验证:

PHP:

$Mensaje_msj="";    
$fecha= date("Y-m-d");     
$TamanioMaximo_msj=3000000;    

$CarpetaAlojamiento_msj='../updates_msj/'.$_SESSION['user'].'/para_'.$_POST['user'].'/'.$fecha';

//$CarpetaAlojamiento_msj=$_SESSION['user']; //Works fine :S

$NombreArchivoFinal_msj="";       

  if (!empty($_FILES['adjunto'])) {
    if($_FILES['adjunto']['size']>$TamanioMaximo) {
      $Mensaje_msj.= 'El adjunto debe pesar menos de 3mb';
    } else {

      if (!is_dir($CarpetaAlojamiento_msj)) {
        mkdir($CarpetaAlojamiento_msj);           #line 199
        chmod($CarpetaAlojamiento_msj, 0777);
      }
    }

    $NombreArchivoFinal_msj="$CarpetaAlojamiento_msj/{$_FILES['adjunto']['name']}";

    if (is_uploaded_file($_FILES['adjunto']['tmp_name'])) {     #line 206
      move_uploaded_file($_FILES['adjunto']['tmp_name'], $NombreArchivoFinal_msj);
    }

    echo "nombre del archivo: ".$NombreArchivoFinal_msj;
    echo "nombre de usuario: ".$_SESSION['user'];

  }
但是当我离开时,
$ruffaraalojamiento_msj=$\u SESSION['user']运行良好


有什么想法吗?

试试
mkdir($ruffaalojamiento_msj,0777,真的)
true
参数递归地表示mkdir。

您可以尝试
mkdir($ruffaalojamiento_msj,0777,true)为什么要将目录分配给
$ruepaalojamiento\u msj
,然后再次将“$”会话['user']分配给它?哪一行@worldaskline 199,带有
mkdir的mkdirtry行($ruffaalojamiento_msj,0777,true)并且它工作!。是用户之间的消息传递系统,
$\u SESSION['user']
是登录用户。它会创建一个具有该名称的文件夹,以使其更有条理