这段时间一直在啃《Head First PHP & MySQL》,这本书非常好,一步步教授怎么开发一个

PHP网站,一直照着一步步地敲代码,现在看到487页,在测试上传文件功能时,发现前面

的editprofile.php里面的 if ($_FILES['file']['error'] == 0) { 老是报错:

// Validate and move the uploaded picture file, if necessary

if (!empty($new_picture)) {

if ((($new_picture_type == 'image/gif') || ($new_picture_type == 'image/jpeg') || ($new_picture_type == 'image/pjpeg') ||

($new_picture_type == 'image/png')) && ($new_picture_size > 0) && ($new_picture_size <= MM_MAXFILESIZE) &&

($new_picture_width <= MM_MAXIMGWIDTH) && ($new_picture_height <= MM_MAXIMGHEIGHT)) {

if ($_FILES['file']['error'] == 0) {

// Move the file to the target upload folder

$target = MM_UPLOADPATH . basename($new_picture);

if (move_uploaded_file($_FILES['new_picture']['tmp_name'], $target)) {

// The new picture file move was successful, now make sure any old picture is deleted

if (!empty($old_picture) && ($old_picture != $new_picture)) {

@unlink(MM_UPLOADPATH . $old_picture);

}

}

else {

// The new picture file move failed, so delete the temporary file and set the error flag

@unlink($_FILES['new_picture']['tmp_name']);

$error = true;

echo '

Sorry, there was a problem uploading your picture.';

}

}

}

else {

// The new picture file is not valid, so delete the temporary file and set the error flag

@unlink($_FILES['new_picture']['tmp_name']);

$error = true;

echo '

Your picture must be a GIF, JPEG, or PNG image file no greater than ' . (MM_MAXFILESIZE / 1024) .

' KB and ' . MM_MAXIMGWIDTH . 'x' . MM_MAXIMGHEIGHT . ' pixels in size.';

}

}// Update the profile data in the databaseif (!$error) { if (!empty($first_name) && !empty($last_name) && !empty($gender) && !empty($birthdate) && !empty($city) && !empty($state)) { // Only set the picture column if there is a new picture if (!empty($new_picture)) { $query = "UPDATE mismatch_user SET first_name = '$first_name', last_name = '$last_name', gender = '$gender', " . " birthdate = '$birthdate', city = '$city', state = '$state', picture = '$new_picture' WHERE user_id = '" . $_SESSION['user_id'] . "'"; } else { $query = "UPDATE mismatch_user SET first_name = '$first_name', last_name = '$last_name', gender = '$gender', " . " birthdate = '$birthdate', city = '$city', state = '$state' WHERE user_id = '" . $_SESSION['user_id'] . "'"; } mysqli_query($dbc, $query); // Confirm success with the user echo '

Your profile has been successfully updated. Would you like to view your profile?'; mysqli_close($dbc); exit(); } else { echo '

You must enter all of the profile data (the picture is optional).'; }}

修改登录用户的信息并点击按钮时

就会显示下图的错误信息,而且数据库里面的信息根本没有改变!!!!Notice: Undefined index: file in D:\phpStudy\WWW\Mismatch\editprofile.php on line 44第44行是: if ($_FILES['file']['error'] == 0) { 请问这是什么原因,怎么解决??代码完全是原书官网提供的,没有写错

php files上传错误,php-PHP上传文件的问题$_FILES['file']['error']相关推荐

  1. php上传文件 报的错误 $_FILES[‘file’]['error']

    大家都知道,php上传文件后台报的错误$_FILES['file']['error'] 前台php程序为 <form id ="formFileUpload" name=&q ...

  2. php上传常见文件类型和$_FILES[file][type]

    php上传常见文件类型对应的$_FILES["file"]["type"]. xls application/vnd.ms-excel xlsx applica ...

  3. android多文件上传错误,在Android中上传大文件而不会出现内存错误

    你尝试过使用过吗? con.setChunkedStreamingMode(1024); 这将帮助您将数据块化为特定大小,这样您就不必将整个文件保留在内存中. 更新: 尝试使用以下方法.我使用此方法上 ...

  4. linux e514写入错误,Linux使用vim编辑文件保存时报E514:write error (file system full?)问题解决...

    发现问题 今天在Linux上使用vim编辑文件保存时报如下错误: E514: write error (file system full?) 从错误看,是磁盘满了,于是使用df -hl查看磁盘使用情况 ...

  5. $_FILES上传错误类型

    $_FILES['file']['error'] 其值为 0,没有错误发生,文件上传成功. 其值为 1,上传的文件超过了 php.ini 中 upload_max_filesize 选项限制的值. 其 ...

  6. thinkphp6+webuploader实现大文件(视频)分片上传/本地保存或上传OSS

    thinkPHP6+webuploader分片上传大视频的解决方案: ①能解决视频太大,1G.2G直传服务器压力过大 ②部分追求完美的人不发接受直传,那只能分片上传 ③分片上传是我找到的比较合理的解决 ...

  7. php上传头像的代码,php实现文件上传及头像预览功能

    php文件上传原理是通过form表单的enctype="multipart/form-data"属性将文件临时放到wamp文件夹中的tmp目录下,再通过后台php程序将文件保存在体 ...

  8. php移动文件错误信息0,move_uploaded_file()移动文件失败

    题目描述 图片上传给php的时候,file文件没有错误,但move_uploaded_file()在控制台打印为空 问题出现的环境背景及自己尝试过哪些方法 我打印了$_FILES'file',显示为0 ...

  9. php 413,PHPCMS上传错误413?

    PHPCMS上传错误413? PHPCMS上传错误413,其原因Nginx默认限制最大上传文件就是1M,所以上传文件超过1M就会报413错误,解决方法:找到"nginx.conf" ...

最新文章

  1. 这届清华新生太难了吧!C++作业难到上热搜,特奖都说做不了,大厂猎头已密切关注...
  2. 循环链表(约瑟夫环)的建立及C语言实现
  3. kaggle House_Price_XGBoost
  4. 苹果Mac修改图标“偷梁换柱”的一种简单方法
  5. sqlserver evaluation是什么版本_SQL Server 基础知识
  6. C++ 虚析构函数作用
  7. 16gU盘在Mac上格式化后在Windows上变成200M
  8. 睡眠者效应(Sleeper Effect):当下被拒绝,但其实已经
  9. linux怎么查看vip地址,rac环境vip在linux下的连接信息
  10. 如何查看java源码
  11. 高通9008驱动_安卓手机高通9008模式下如何救砖
  12. andorid安卓优秀博文源码推荐集锦
  13. python 读取并显示图片的两种方法
  14. 三菱q系列plc 和电脑socket_三菱Q系列和WinCC以太网通讯的组态步骤
  15. 此nvidia驱动程序与此windows版本不兼容,此图形的驱动程序无法找到兼容的驱动硬件
  16. Spring框架快速入门
  17. 【NLP】大数据之行,始于足下:谈谈语料库知多少
  18. Vue - webpack 打包兼容 360 浏览器和 IE 浏览器
  19. 给在线发布的cab文件进行数字签证
  20. 计算机网络系统有哪些核心技术,超级计算机的核心技术是什么

热门文章

  1. LeetCode-字符串-58. 最后一个单词的长度
  2. numpy.arange详解
  3. Pandas读取中文文本文件报错:python ‘utf-8‘ codec can‘t decode byte 0xe3 in position 0: unexpected end of data
  4. 白话异常检测算法Isolation Forest
  5. Keepalived 使用指南
  6. Keras中Callback函数的使用
  7. 独家 | 大数据与AI技术在金融科技的应用
  8. 人生最浪费生命的四件事,2017年别再做了!
  9. 谷歌语音转录背后的神经网络
  10. mysql登录抓包_MySQL登录验证的抓包