Php 移动上传的文件在xampp中不工作
我正在尝试将上传的图片移动到目的地,但Php 移动上传的文件在xampp中不工作,php,mysql,php-7,Php,Mysql,Php 7,我正在尝试将上传的图片移动到目的地,但移动上传的文件(功能对我不起作用。我正在使用xampp作为服务器。我尝试了一些建议,但没有任何效果 $file = $_FILE['image']['tmp_name']; $image = addslashes(file_get_contents($_FILES['image']['tmp_name'])); $imgName = addslashes($_FILES['image']['name']); $imgSize = getimagesize($
移动上传的文件(
功能对我不起作用。我正在使用xampp作为服务器。我尝试了一些建议,但没有任何效果
$file = $_FILE['image']['tmp_name'];
$image = addslashes(file_get_contents($_FILES['image']['tmp_name']));
$imgName = addslashes($_FILES['image']['name']);
$imgSize = getimagesize($_FILES['image']['tmp_name']);
$des = "C:\xampp\htdocs\proPic";
move_uploaded_file($file,$des.$imgName);
//mysql query
从我在代码上看到的情况来看,您在
$des
上缺少\
尝试在末尾添加\
$des = "C:\xampp\htdocs\proPic\";
因为
addslashes
只返回需要转义的字符前带有反斜杠的字符串。这些字符是单引号(”
)、双引号(”
)、反斜杠(\
)和NUL
(空字节)。请参见这里的,我更改了两件事
1.在$file变量中添加缺少的S,如$file=$\u fileS['image']['tmp\u name']
2.更改目标路径变量($dec),如下所示
$file = $_FILES['image']['tmp_name'];
$image = addslashes(file_get_contents($_FILES['image']['tmp_name']));
$imgName = addslashes($_FILES['image']['name']);
$imgSize = getimagesize($_FILES['image']['tmp_name']);
$des = "C:/xampp/htdocs/proPic";
move_uploaded_file($file,$des.$imgName);
为什么要将斜杠添加到文件\u get\u content()中这可能会干扰图像文件的内容。==图像的即时销毁因为两个人可以很容易地上传一个名为
mypic.jpg
的文件,最好为这些上传的图像创建一个本地唯一的文件名。对我不起作用不是很有帮助。它以什么方式不起作用。文件没有保存吗?是吗文件损坏且无法读取?请详细说明不工作的含义移动已上载的文件($文件['image']['tmp\u name'],$des.$imgName);尝试此文件出于安全原因,我正在使用addslashes。我尝试将其删除,但仍然无法工作。我的文件未移动到文件夹。但它已成功插入到数据库中。如果我最后在之前添加\的话”它以某种方式禁用了代码的其余部分。您是否可以呼出并检查echo$des.$imgName
如果您缺少``那么这就是代码的问题,非常感谢您的支持,但我尝试了所有方法。没有任何效果。我仍然可以成功地将图像作为blob插入数据库,但图片不会在文件夹中移动。也许可以我在php.ini文件中做了什么?我还更改了最大上载大小仍然没有用。如果使用linux操作系统意味着在上载文件夹中授予777权限。在本地主机中工作正常。。