HTML文件:
<input type="file" name="photo" size="300" accept="image/*" id="photo"/>
PHP部分:
if ( move_uploaded_file ($_FILES['photo'] ['tmp_name'],
"C:\xampp\htdocs\ShowYourTalent/{$_FILES['photo'] ['name']}"))
当我运行此代码时,我会收到以下错误:
警告: move_uploaded_file(C:\ tmpp \ htdocs \ ShowYourTalent / 1.gif):无法打开流:参数无效
警告: move_uploaded_file():无法将'C:\ xampp \ tmp \ phpDE21.tmp'移动到'C:\ tmpp \ htdocs \ syt / 1.gif'
答案 0 :(得分:0)
这是因为您在路径名中使用双引号和反斜杠。这使PHP解释了序列:
"\xa"
.. xampp
的开头,作为十六进制表示xA
(十进制10)。字符10
表示ASCII中的换行符,该换行符在Windows路径名中无效。这就是你收到警告的原因。
<强>解决方案强>:
使用正斜杠,PHP会将它们转换为正确的Windows路径:
if ( move_uploaded_file ($_FILES['photo'] ['tmp_name'],
"C:/xampp/htdocs/ShowYourTalent/{$_FILES['photo'] ['name']}"))