为了账号安全,请及时绑定邮箱和手机立即绑定

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

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

PHP
斯蒂芬大帝 2021-11-13 19:04:03
我有一个代码,我在其中选择图像,然后输入要创建的目录名称以保存该图像。此后,一旦单击按钮,应在给定路径中创建目录,并将文件保存在其中。下面是我正在使用的代码:<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最后一个目录的值时,应该是我在文本框中输入的那个。但它不起作用。任何人都可以请说明为什么它不起作用。谢谢
查看完整描述

1 回答

?
POPMUISE

TA贡献1765条经验 获得超5个赞

试试这个上传脚本。根据您的评论,似乎第一个问题是在表单中输入的目录名称没有添加到完整uploadfile路径中。您需要idtest先从$_POST变量中获取。我还建议使用move_uploaded_file来移动上传的文件。


上传.php


<?php


    $uploaddir = 'G:/dataset/' . $_POST['idtest'];

    // check if directory exists

    if(!is_dir($uploaddir)){

        mkdir($uploaddir);

    }

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


    echo $uploadfile;

    move_uploaded_file($_FILES['userfile']['tmp_name'],$uploadfile);


?>



出于安全原因,请确保正确的表单验证和文件名检查,但这超出了本答案的范围。正如其他评论者所提到的,确保文件系统权限设置为允许写入G:/dataset/.


查看完整回答
反对 回复 2021-11-13
  • 1 回答
  • 0 关注
  • 112 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信