0

我正在尝试创建一个上传表单,用户可以通过该表单输入某些详细信息(包括文件上传),然后将其插入数据库,该行输入成功,但出现此错误。即 警告:move_uploaded_file(upload/computer/SIGN 001.jpg):无法打开流:第 28 行的 C:\wamp\www\stockm.php 中没有这样的文件或目录 & 警告:move_uploaded_file():无法移动' C:\wamp\tmp\php2CEE.tmp' 到第 28 行 C:\wamp\www\stockm.php 中的 '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 命名计算机中创建了一个文件夹,我希望将图像发送到该文件夹​​,在数据库中我得到了这个位置,但在上传/计算机中没有文件,文件夹是空的。

4

2 回答 2

1

您的路径$pathAndName = "upload/computer/".$name;是相对路径,因此它将从执行脚本的当前目录中搜索。

例如,如果您从中运行,wamp\www\test\upload.php它将搜索wamp\www\test\upload\computer\路径。

您可以将根目录的路径指定为"/upload/computer/".$name;,这将搜索wamp\www\upload\computer路径。

此外,您必须检查该文件夹是否存在于路径中,并且它是否有权访问或读取它。

于 2013-08-04T14:48:15.723 回答
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);

在上面的代码片段中,我为需要上传文件的目标路径指定了绝对路径

于 2013-08-04T15:00:36.920 回答