拥有现有的登录/用户系统,想知道如何在用户注册时创建文件夹


Have Existing Login/User system, want to know how to create a folder when user signs up

我有一个现有的登录/注册系统,我想制作一个登录/注册系统,以便您在注册时它会自动创建一个带有您的用户名的目录,我将原始注册脚本放在下面。我已经包含了整个寄存器文件代码,所以你将不得不原谅混乱

 <?php include "../assets/database/160216.php"; ?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml"> 
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />  
<meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1.0, user-scalable=no"/>
<title>Connect With Me</title>
  <!-- CSS -->
  <link href="https://fonts.googleapis.com/icon?family=Material+Icons" rel="stylesheet">
  <link href="../../assets/css/materialize.css" type="text/css" rel="stylesheet" media="screen,projection"/>
  <link href="../../assets/css/style.css" type="text/css" rel="stylesheet" media="screen,projection"/>
</head>  

<body> 
  <!--  Scripts-->
  <script src="https://code.jquery.com/jquery-2.1.1.min.js"></script>
  <script src="../../assets/js/materialize.js"></script>
  <script src="../../assets/js/init.js"></script>
<header>     
<!--Navigation Menu-->
<div class="navbar-fixed">
  <nav class="white" role="navigation">
    <div class="nav-wrapper container">
      <a id="logo-container" href="../../index.html" class="brand-logo">Connect With Me</a>
      <ul class="right hide-on-med-and-down">
        <li><a href="../../index.html#about">About</a></li>
        <li><a href="../../index.html#contact">Contact</a></li>
        <li><a href="../login">Login</a></li>
      </ul>
      <ul id="nav-mobile" class="side-nav">
        <li><a href="#about">About</a></li>
        <li><a href="#contact">Contact</a></li>
        <li><a href="../login">Login</a></li>
      </ul>
      <a href="#" data-activates="nav-mobile" class="button-collapse"><i class="material-icons">menu</i></a>
    </div>
  </nav>
  </div>
  <!--Image Header With Text-->
  <div id="index-banner" class="parallax-container">
    <div class="section no-pad-bot">
      <div class="container">
        <br><br>
      <br>  <h1 class="header center teal-text text-lighten-2"><br>Register</h1>
        <div class="row center">
          <h5 class="header col s12 light">Register And Start Using Immediately.</h5>
        </div>
        <br><br>
      </div>
    </div>
    <div class="parallax"><img src="../../assets/images/bg.jpg" alt="Unsplashed background img 1"></div>
  </div>
  </header>


<div id="main" class="center">
<?php
if(!empty($_POST['username']) && !empty($_POST['password']))
{
    $username = mysql_real_escape_string($_POST['username']);
    $password = md5(mysql_real_escape_string($_POST['password']));
    $email = mysql_real_escape_string($_POST['email']);
     $checkusername = mysql_query("SELECT * FROM users WHERE Username = '".$username."'");
     if(mysql_num_rows($checkusername) == 1)
     {
        echo "<h1>Error</h1>";
        echo "<p>Sorry, that username is taken. Please go back and try again.</p>";
     }
     else
     {
        $registerquery = mysql_query("INSERT INTO users (Username, Password, EmailAddress) VALUES('".$username."', '".$password."', '".$email."')");
        if($registerquery)
        {
            echo "<h1>Success</h1>";
            echo "<p>Your account was successfully created. Please <a href='"../index.php'">click here to login</a>.</p>";
        }
        else
        {
            echo "<h1>Error</h1>";
            echo "<p>Sorry, your registration failed. Please go back and try again.</p>";    
        }       
     }
}
else
{
    ?>
<main>
<br>     
<div class="container">
  <div class="section">

    <form method="post" action="index.php" name="registerform" id="registerform" class="col s12">
      <div class="row">
              <div class="input-field col s12">
          <input type="text" name="username" id="username">
          <label for="username">Username</label>
        </div>
        <div class="input-field col s12">
          <input id="password" type="password" name="password" class="validate">
          <label for="password">Password</label>
        </div>
      </div>
      <div class="row">
        <div class="input-field col s12">
          <input id="email" type="text" name="email" id="email" class="validate">
          <label for="email">Email</label>
        </div>
      </div>
      <button class="btn waves-effect waves-light center" type="submit" name="register" id="register">Register</button>
    </form>
</div>

    <?php
}
?>
</div>
</body>
</html>

非常感谢,我希望你们中的一个人有一个建议/想法。

更新 - 感谢您的评论,这些评论非常有帮助。

你可以尝试这样的事情:

mkdir($_SERVER["DOCUMENT_ROOT"] . $destinationPath . $userName ,0777,true);  

是我用来创建缩略图文件夹的。

有关更多信息,请查看官方 PHP mkdir 手册。

您应该能够在 PHP 中使用 mkdir 定义的函数使用您的用户名创建 dir:

<?php
  mkdir("/path/to/my/dir", 0700);
?>

这是 mkdir(( 的手册。

您可以在此片段之后插入代码:

$username = mysql_real_escape_string($_POST['username']);
$password = md5(mysql_real_escape_string($_POST['password']));
$email = mysql_real_escape_string($_POST['email']);
 $checkusername = mysql_query("SELECT * FROM users WHERE Username = '".$username."'");
 if(mysql_num_rows($checkusername) == 1)
 {  
     $folderPath = "/path/to/your/dir".$username;
     if (!is_dir($folderPath)) {
        //--. CODE TO CREATE FOLDER HERE
        mkdir($folderPath, 0700);
     }

但是你不应该使用 mysql。它在最新版本的 php 中已弃用。你应该使用 mysqli。

mkdir()函数创建一个目录。

此函数在成功时返回TRUE,或在失败时返回FALSE。此时,您可以先检查注册是否成功,然后才能运行mkdir()功能

if($registerquery)
    {
        mkdir('/test1/'.$username, 0777, true);
        echo "<h1>Success</h1>";
        echo "<p>Your account was successfully created. Please <a href='"../index.php'">click here to login</a>.</p>";
    }