我有我的注册表单,当有人注册我想要创建一个名称为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;
}
}
答案 0 :(得分:1)
更改您当前的代码:
$dir = $last_row;
分为:
$dir = $stmt->insert_id;
然后回显该值以确保您获得结果。 同时启用error_reporting或检查错误日志以查看任何错误。