如何使用php创建目录并将图像保存在其中

我有一个代码,我在其中选择图像,然后输入要创建的目录名称以保存该图像。此后,一旦单击按钮,应在给定路径中创建目录,并将文件保存在其中。


下面是我正在使用的代码:


<form enctype="multipart/form-data" action="upload.php" method="POST">

    <input type="hidden" name="MAX_FILE_SIZE" value="512000" />

    Send this file: <input name="userfile" type="file"/>

    <input type="text" name="idtest" value=<?php echo $idtest; ?> >

    <input type="submit" value="Send File" multiple/>

</form>

上传.php


<?php


    $uploaddir = 'G:/dataset/' . $idtest;

    $uploadfile = $uploaddir . basename($_FILES['userfile']['name'])  ;


    echo $uploadfile;


?>

在上面的代码中,我没有包含我仍然需要处理的创建目录部分。现在理想情况下,变量idtest应该附加uploaddir变量,所以每当我打印uploadfile最后一个目录的值时,应该是我在文本框中输入的那个。但它不起作用。任何人都可以请说明为什么它不起作用。谢谢


斯蒂芬大帝
浏览 113回答 1
1回答

POPMUISE

试试这个上传脚本。根据您的评论,似乎第一个问题是在表单中输入的目录名称没有添加到完整uploadfile路径中。您需要idtest先从$_POST变量中获取。我还建议使用move_uploaded_file来移动上传的文件。上传.php<?php&nbsp; &nbsp; $uploaddir = 'G:/dataset/' . $_POST['idtest'];&nbsp; &nbsp; // check if directory exists&nbsp; &nbsp; if(!is_dir($uploaddir)){&nbsp; &nbsp; &nbsp; &nbsp; mkdir($uploaddir);&nbsp; &nbsp; }&nbsp; &nbsp; $uploadfile = $uploaddir ."/". basename($_FILES['userfile']['name'])&nbsp; ;&nbsp; &nbsp; echo $uploadfile;&nbsp; &nbsp; move_uploaded_file($_FILES['userfile']['tmp_name'],$uploadfile);?>出于安全原因,请确保正确的表单验证和文件名检查,但这超出了本答案的范围。正如其他评论者所提到的,确保文件系统权限设置为允许写入G:/dataset/.
打开App,查看更多内容
随时随地看视频慕课网APP