Permissions at registration

  • Hi,

    I recently bought a website which is using this script.
    I allready changed the database info and Other login info in the files.
    The people can register at a registration page of the site. (
    After registration the all info is in the database. but when you login (Try out user: testtest pass: testtest) you will see:

    "                   ERROR(S):

    The home directory doesn't exist. check your settings.


    I looked over at the files. And i found out that since i transfered and edited the files info the newly registered accounts get a directory with CHMOD permissions: "755"
    So the File_Manager can't read the directory, so it thinks the directory isn't there.

    I can't remember anymore where i saw the settings for this.
    So could you tell me where that can be changed?


    Marcel doornbos

    • At the moment, Quixplorer does not support an "online registration service". So this seems to be an addon someone else has made for quixplorer. You're talking about database info, etc. The current version does also not support any database support in order to keep quixplorer easy to install and slim. So someone did some major changes on the code. Since i don't know excactly what has been changed i can only guess about the reasons of your problem.

      I guess that some script automatically creates a new "home" directory for each new user, that registrates an account. As long as the script does not change access permissions to this directory, it is generated using the umask settings for the webserver process which might be set to the 755 permissions. As long as this directory is owned by the webserver process itself, this should make no trouble. But if the directory owner is not the webserver process, the user may just "read" this directory and is not able to write to it. However, 755 means, that everyone has at least read and execute permissions to this directory, which means everyone (on the server) may read this directory. So this cannot be the reason why this error occurs.

      I guess the problem is that the "configurated" home directory of the new user does not match the directory created on the server. I don't know where this information is configured in your system yet, usually this is stored in the ".htusers.php" file in the ".include" directory. cAnother reason may be that one parent directory is not accessible by the webserver process.

      So check the following items:

      * Check if the configurated home directory really exists and matches with the directory created by the registration script
      * Check if the webserver has read/write access to the full path of the home directory of the user

      Sorry, but at the moment i cannot give you more specific solution hints since i don't know the details and changes made on quixplorer for that site.

      • Ok I think that the Problem is that the index.html file which should be created in it has permissions 644.
        And at the register.php file it says that it gives the file permissions: "w+"
        I really don't know how to solve it but maybe you do.


        Marcel Doornbos

    • O and the login info has changed. you now need to login with E-mail:

      pass: testtest

    • It Doesn't work for all.

      It worked for 1: E-mail:"" pass:"doornbos"

      But the account i created after that didn't work E-mail:"" pass:"blablabla"

      It's Really strainge. Also in the .htusers.php only is:


      <?php $GLOBALS["users"]=array(
      ); ?>


      and the actual PHP registration script is this:


      if ($_POST) {
          foreach($_POST as $k => $d) {
              if ($_POST[$k] == NULL) {
                  echo "You forgot to enter <b>$k</b><br />";
                  $err = 1;
              } else {
                  $_POST[$k] = stripslashes($_POST[$k]);
          $password = md5($_POST['password1']);
          if ($err != 1) {
              if(md5($_POST['verify']).'a4xn' == $_COOKIE['tntcon']) {
                  if ($_POST['password1'] == $_POST['password2']) {
                      $sql = mysql_query("INSERT INTO `phpaudit_clients` (client_id, username, password, first_name, last_name, email, storage_limit) VALUE ('', '$_POST[username]', '$password', '$_POST[firstname]', '$_POST[lastname]', '$_POST[email]', '5368709120')");
                      $fileHandle = fopen("users/$_POST[username]/index.html", "w+");
                      echo "New account has been registered!<br>";
                  } else {
                      echo "Your passwords didn't match<br />";
              } else {
                  echo "The verification code did not match<br />";


      I really don't know what to change to make it work :S and the strainge thing it VERY often Works.


      Marcel Doornbos

    • You have to be at the "Files" tap to see it.

    • Hi,

      the code you've posted shows that the complete registration routine has been changed using a database. I don't know the rest of the code. In the "normal" version of quixplorer, the user name, password and home directory settings for each user are stored in the .htusers.php. Your example shows that the patched version you're using ignores the .htusers.php completely. I'm not sure how the patched version determines the home directory of each user, but i guess the bug there. To evaluate this, send me the complete php source code as email. Than i'll have a look at it, but please give me some time.

      Best regards,

      • Ok, You need really ALL the code?
        But than i need your E-mail Address.
        Because I'm not going to send a VERY BIG E-mail using the e-mail sender from Sourceforce.
        So please send me the e-mail address.


        Marcel Doornbos