Jump to content

Creating a directory from selected item in dropdown menu


blivori

Recommended Posts

Hi,

 

This is a screenshot of the script I'm trying to finish:

 

ESB1B.png

 

 

 

A simple page, with an upload box, upload button, dropdown menu with directories, text box and a Create button.

 

I can't see what's wrong in the code, as the folder is not getting created.

 

What I'm trying to do is, when the 'Create' button is clicked:

  • Get path from drop down menu
  • Get text from text box
  • Create a new folder in the selected directory (from drop down menu) with the name being the value from the textbox.

This is the code:

<?php
   include("login.php");
?>
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
   <title>FileStore - Upload Files</title>
   <link rel="stylesheet" href="./CSS/style.css" type="text/css" media="screen, projection" />
</head>
<body>
<div id="wrapper">
   <header id="header">

   <div id="header-content">
    <strong><h1>FileStore</h1></strong> Upload multiple files at once!
   </div>
   <div class="login-info" >
<?php

   if ($isLoggedin === false) {
    echo '  <form action="" method="POST">
			    Username: <input name="username" >
			    Password: <input type="password" name="password" size="8">
						  <input type="submit" name="submit" value="Login">
		    </form>';
    echo "<p align='right'>You are not logged in.</p>";
    echo "<b><a href='registration.php'>Register</a></b>";

   }else{ 
    echo $welcomeMsg;
   }  
?>
   </div>

   </header><!-- #header-->
   <section id="middle" align="center">
    <div id="container">
    <br><br>
	    <div id="content">
		    <strong><h1>Upload files</h1></strong><br><br>
		    <div id="upload-file" >

		    <form action="" method="post" enctype="multipart/form-data">
					    <input type="file" value="" name="upload[]" multiple>
					    <button type="submit">Upload!</button>
   </form>
   <form action="" method='post' >
   <select name="myDirs">
		    <option value=""  selected="selected">Select a folder</option>
   </form>





<?php
include("dbConfig.php");
global $userid;
global $up_path;
global $sPath;
$Username = $_SESSION["username"];

$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'];
}
$sPath = realpath("./files/" . $userid );
if (!file_exists($sPath)) {


    mkdir($folder_path, 0777, true);
    chmod($folder_path, 0777);

}
if (chdir($sPath)) {
$iterator = new RecursiveIteratorIterator( new RecursiveDirectoryIterator($sPath, RecursiveDirectoryIterator::SKIP_DOTS), RecursiveIteratorIterator::SELF_FIRST);
foreach($iterator as $file) {
   if($file->isDir()) {

  echo '<option value="'.$file.'">'.$file."</option>\n";



   }


}
echo var_dump($file);
}

echo "<form action='' method='post' name='dircreation'>";
echo "<input type='text' name='newDir' > ";	 
echo "<input type='submit' value='Create'>";
echo "</form>";
if(isset($_POST['dircreation'])) {
$selected_path = $_POST["myDirs"];
$newDir = $_POST["newDir"];


//$fPath = realpath($sPath. "/" . $file . "/");
$folder_path = $selected_path .  "/" .  $newDir . "/" ;

var_dump($folder_path);

if (!file_exists($folder_path)) {

   mkdir($folder_path, 0777, true);
   chmod($folder_path, 0777);

   echo "Folder" . $newDir . "created.";
   echo "Redirecting to upload page..";


  // header( 'Location: upload.php' ) ;

 } else {
 echo "Error creating " . $newDir;
 }



} else if (isset($_POST['upload[]'])) {


 $error_message[0] = "Unknown problem with upload.";
 $error_message[1] = "Uploaded file too large (load_max_filesize).";
 $error_message[2] = "Uploaded file too large (MAX_FILE_SIZE).";
 $error_message[3] = "File was only partially uploaded.";
 $error_message[4] = "Choose a file to upload.";
 $vpath = strlen($userid);
 $upload_dir  = './files/' . (string)$userid . '/';
 $num_files = count($_FILES['upload']['name']);

 if (!file_exists($upload_dir)) {
  mkdir($sPath, 0777, true);
  chmod($sPath, 0777);
 } else {
  for ($i=0; $i < $num_files; $i++) {
  $upload_file = $upload_dir . urlencode(basename($_FILES['upload']['name'][$i]));
   if (@is_uploaded_file($_FILES['upload']['tmp_name'][$i])) {
 if (@move_uploaded_file($_FILES['upload']['tmp_name'][$i],
  $upload_file)) {
  //Great success...
   echo basename($upload_file) . " has been uploaded. <br>";
  //$content = file_get_contents($upload_file);
  //echo $content;
 } else {
  print $error_message[$_FILES['upload']['error'][$i]];
 }
   } else {
 print $error_message[$_FILES['upload']['error'][$i]];
   }   
  }
  }

}


?>


    </div>
	    </div><!-- #content-->
    </div><!-- #container-->
    <aside id="sideLeft">
	    <div id="menu-x" align="center"><br>
	    <strong>Menu</strong><br><br>
			    <div class="menu">
				    <ul>
				    <li><a href="index.php">Home</a></li>
				    <li><a href="upload.php">Upload</a></li>
				    <li><a href="files.php">Files</a></li>
				    <li><a href="about.php">About</a></li>
				    <li><a href="help.php">Help</a></li>
				    <li><a href="#">Logout</a></li>
				    </ul>
				    <br style="clear:left"/>
			    </div>
	    </div>

    </aside><!-- #sideLeft -->
   </section><!-- #middle-->
   <footer id="footer">
    <strong>FileStore:</strong> A CMT 3315 Project by Brian Livori
   </footer><!-- #footer -->
</div><!-- #wrapper -->
</body>
</html>

Archived

This topic is now archived and is closed to further replies.

×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.