注册时根据ID创建文件夹

时间:2017-04-30 19:43:11

标签: php

我有我的注册表单,当有人注册我想要创建一个名称为user user的文件时,我想用index.php修改一个代码,该代码将重定向到主站点。

我需要创建文件夹的位置是example.com/uploads,这将是那里的图像和东西..

我遇到的问题是它拒绝创建文件夹。

    function create_user($email, $full_name, $job_title, $password){

        if (email_exists($email)) {
            return false;
        } else {        

                $hashed_password = password_hash($password, PASSWORD_BCRYPT);

                $db = dbconnect();
                $stmt = $db->prepare('INSERT INTO users(Email, FullName, JobTitle, Bio, Password, ValidationCode, Active) VALUES (?,?,?,?,?,?,?)');
                $stmt->bind_param('sssssss', $email, $full_name, $job_title, $bio, $hashed_password, $validation_code, $active);
                $stmt->execute();
                $last_row = $stmt->insert_id;
                $stmt->close(); 



           $MainFolder ="uploads";
        $dir = $stmt->insert_id;            


        $file_to_write = 'index.php';           

        if( is_dir($dir) === false ){
            mkdir($dir);
        }
        $file = fopen($MainFolder.'/'. $dir . '/' . $file_to_write,"w");

        // write content into
        fwrite($file,"<?php header('location: http://example.com');");                                    

                return true;
            }
    }

1 个答案:

答案 0 :(得分:1)

更改您当前的代码:

$dir = $last_row;

分为:

$dir = $stmt->insert_id;

然后回显该值以确保您获得结果。 同时启用error_reporting或检查错误日志以查看任何错误。