我正在尝试创建一个上传表单,用户可以通过该表单输入某些详细信息(包括文件上载),然后将其插入到数据库中,该行输入成功但我收到此错误。即 警告:move_uploaded_file(upload / computer / SIGN 001.jpg):无法打开流:第28行的C:\ wamp \ www \ stockm.php中没有此类文件或目录 &安培; 警告:move_uploaded_file():无法在第28行的C:\ wamp \ www \ stockm.php中将'C:\ wamp \ tmp \ php2CEE.tmp'移动到'upload / computer / SIGN 001.jpg'
这是包含上传文件部分的整个脚本的代码。
$name= $_FILES['file']['name'];
$tmp_name = $_FILES['file']['tmp_name'];
$type = $_FILES['file']['type'];
$size = $_FILES['file']['size'];
$pathAndName = "upload/computer/".$name;
$moveResult = move_uploaded_file($tmp_name, $pathAndName);
我在C:/ wamp / upload命名计算机中创建了一个文件夹,我想要发送图像,在数据库中我得到这个位置,但在上传/计算机中没有文件,文件夹是空的。
答案 0 :(得分:1)
您的路径$pathAndName = "upload/computer/".$name;
是相对路径,因此它将从执行脚本的当前目录中进行搜索。
例如,如果您从wamp\www\test\upload.php
开始运行,则会搜索wamp\www\test\upload\computer\
路径。
您可以将根目录中的路径指定为"/upload/computer/".$name;
,这将搜索wamp\www\upload\computer
路径。
此外,您必须检查路径中是否存在该文件夹,并且该文件夹有权访问或读取该文件夹。
答案 1 :(得分:0)
作为问题的解决方案,请尝试执行以下代码段以上传文件
$name= $_FILES['file']['name'];
$tmp_name = $_FILES['file']['tmp_name'];
$type = $_FILES['file']['type'];
$size = $_FILES['file']['size'];
$pathAndName = $_SERVER['DOCUMENT_ROOT']."upload/computer/".$name;
$moveResult = move_uploaded_file($tmp_name, $pathAndName);
在上面的代码片段中,我已指定了需要上传文件的目标路径的绝对路径