我是PHP的新手。我想创建一个新文件夹,并在提交表单时将图像添加到该文件夹中。用户名称中的Newfolder按预期方式创建,但图像未插入到特定文件夹中。move_uploaded_file中的动态路径不适用于我
附加php和表单进行审查。这将是非常有帮助的,如果有人帮助我
如果我将$ username更改为move_uploaded_file中现有的文件夹名称,图像正在插入。它看起来像我在映射路径中缺少一些东西。寻找解决方案。谢谢。
<?php include("header.php");
error_reporting(0);
if(isset($_POST['add_menu_submit']))
{
$gid=$_REQUEST['id'];
$qry1="select * from users";
$exec1=mysql_query($qry1);
$num1=mysql_num_rows($exec1);
$img1=$_FILES['image1']['name'];
$img2=$_FILES['image2']['name'];
$img3=$_FILES['image3']['name'];
$username=$_POST['username'];
$cid=$_REQUEST['id'];
$sqd= "insert into users(username,vanity,image1,image2,image3)values
('$username','$_POST[vanity]','$img1','$img2','$img3')";
$exe=mysql_query($sqd);
$msg='Product Have been Added sucessfully!!!';
header("location:manage_collection.php");
if (!file_exists($username)) {
mkdir($username, 0777, true);
}
move_uploaded_file($_FILES['image1']['tmp_name'],$username/$_FILES['image1']['name']);
move_uploaded_file($_FILES['image2']['tmp_name'],$username/$_FILES['image2']['name']);
move_uploaded_file($_FILES['image3']['tmp_name'],$username/$_FILES['image3']['name']);
}
?>
<section id="main" class="column">
<div class="clear"></div>
<form action="add_collection.php" name="product" method="post" enctype="multipart/form-data">
<article class="module width_full">
<?php echo $msg; ?>
<header><h3>Add New Collection</h3></header>
<div class="module_content">
<div style="color:#FF0000"> <?php if(isset($error)) { echo $error; } ?> </div>
<fieldset>
<label>Pagename</label>
<input type="text" name="username" value="">
</fieldset>
<fieldset>
<label>Vanity</label>
<input type="text" name="vanity" value="">
</fieldset>
<fieldset>
<label>Image</label>
<input type="file" name="image1" id="image">
</fieldset>
<fieldset>
<label>Image</label>
<input type="file" name="image2" id="image">
</fieldset>
<fieldset>
<label>Image</label>
<input type="file" name="image3" id="image">
</fieldset>
<!--<fieldset>
<label>status</label>
<select name="status" id="status" size="1">
<option value="Active">Active</option>
<option value="Inactive">Inactive</option>
</select>
</fieldset>-->
<footer>
<div class="submit_link" style="float:inherit;" align="center">
<input type="submit" value="Submit" class="alt_btn" name="add_menu_submit">
<input type="reset" value="Reset" class="alt_btn1" >
</div>
</footer>
</div>
</article><!-- end of post new article -->
</form>
</section>
<?php include("footer.php"); ?>
您应该检查'move_uploaded_file()'的返回值。 – 2014-09-18 23:53:06
此外,将'$ _POST ['username']'直接传递给'mkdir()'是要求麻烦的。 – 2014-09-18 23:54:13
最后,使用预准备语句,因为此脚本容易受到SQL注入的影响。 – 2014-09-18 23:54:57