Ftp服务器文件没上传成功,FTP文件上传successefully但没有出现在服务器

上传文件或多个文件时首先要做的一件事就是检查上传错误。

// Check $_FILES['file_up']['error'] value.

$file_upload=true;

switch ($_FILES['file_up'']['error']) {

case UPLOAD_ERR_INI_SIZE:

echo 'The uploaded file exceeds the upload_max_filesize directive in php.ini.';

$file_upload=false;

break;

case UPLOAD_ERR_FORM_SIZE:

echo 'The uploaded file exceeds the MAX_FILE_SIZE directive that was specified in the HTML form.';

$file_upload=false;

break;

case UPLOAD_ERR_PARTIAL

echo 'The uploaded file was only partially uploaded.';

$file_upload=false;

break;

case UPLOAD_ERR_NO_FILE:

echo 'No file was uploaded.';

$file_upload=false;

break;

case UPLOAD_ERR_NO_TMP_DIR:

echo 'Missing a temporary folder.';

$file_upload=false;

break;

case UPLOAD_ERR_CANT_WRITE:

echo 'Failed to write file to disk.';

$file_upload=false;

break;

case UPLOAD_ERR_EXTENSION:

echo 'A PHP extension stopped the file upload.';

$file_upload=false;

break;

}

if (! $file_upload) {

// no file so do whatever is appropriate on upload fail

exit;

}

// then the rest of your code

还要注意,我改变$file_upload="false";到$file_upload=false;它更好的使用真正的布尔值=true和=false而不是一个字符串,那么你可以测试他们只需使用if ($file_upload)问是true和if (! $file_upload)要求是它false。

希望这可以确定上传过程中实际发生了什么问题。

现在到您的代码中的其他错误!

最明显的是,您正在从$file_name=$_FILES['file_up']['name'];获取用户上传的文件的文件名,但这只是名称而不是上载文件实际存在的位置。

PHP上传过程是一个2阶段过程,浏览器发送文件并将PHP存储在临时文件中。然后你的代码运行,你得到验证和检查大小和文件类型等等。然后,你应该将临时文件移动到文件系统上的一个permanant文件使用move_file_upload()

现在,因为你实际上并没有存储这个文件在系统上,你可以大概算了这一步,但是这意味着你FTP到其他服务器的文件shoudl从$_FILES['file_up']['tmp'];

中发送,从而改变这一行

$file_name=$_FILES['file_up']['name'];

$file_name=$_FILES['file_up']['tmp'];

然后至少你会通过你的FTP连接发送一个真实的文件。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值