当人们在php表单上注册时,我试图创建一个名称为person用户名的文件夹,但它创建了一个名为$username的文件夹。
我现在使用的表单只是我将要使用的表单的一个小版本,以尝试让它发挥作用。
希望有人能帮我?
<body>
<form action="index.php" method="post">
enter name<input type="text" name="user">
<p>
<input type="submit" name="submit" value="Upload">
</form>
</body>
<?php
if(isset($_POST['submit']))
{
include("connect.php");
$username = $_POST['user'];
//Get current working directory
$curdir = getcwd();
include("create_folder.php");
mysql_close($con);
}
?>
<!--create folder.php-->
<?php
//Name directory after username
$uploads_dir = '/$username';
//make directory writable from everyone
if(mkdir($curdir . $uploads_dir , 0777)){
echo "$uploads_dir was made";
echo "<br>";
}else{
echo "Failed to create directory";
}
?>
变量不会在单引号内解析。
$uploads_dir = '/$username';
我需要读为:
$uploads_dir = "/$username";
然而,如果它给你带来麻烦,你可能需要添加完整的系统路径:
即:
$uploads_dir = "/var/users/public_html/members/$username";
旁注:/var/users/public_html/members
只是一个例子。您需要填写实际值。
另一个注意事项:不建议使用0777
,最好使用0755
。
将错误报告添加到文件顶部,这将有助于查找错误。
<?php
error_reporting(E_ALL);
ini_set('display_errors', 1);
// rest of your code
旁注:错误报告只能在临时阶段进行,而不能在生产阶段进行。