<form method="POST" enctype="multipart/form-data" > 这个我知道,刚才没写出来,究竟 在用$_FILES['file']['name']时候报错,Notice: Undefined index: file in F:\web\upload.php on line 17 这个错误是什么??????
是IIS还是APache? 在php.ini中设置: safe_mode=off register_globals = on 再看看,我不能确定
是iis,php.ini已经是 safe_mode=off register_globals = on 大家帮帮忙,再想想
这个我知道,刚才没写出来,究竟 在用$_FILES['file']['name']时候报错,Notice: Undefined index: file in F:\web\upload.php on line 17
这个错误是什么??????
在php.ini中设置:
safe_mode=off
register_globals = on
再看看,我不能确定
safe_mode=off
register_globals = on 大家帮帮忙,再想想
打倒美帝国!!!
布屎下台!!!
<?php if ($film_name<>"")echo "<form name=form1 method=post enctype=multipart/form-data action=upload.php>";
echo "<p>";
echo "<input type=file name=file>" ;
echo "</p>";
echo "<p>";
echo "<input type=submit name=Submit value=我要上传图片>";
echo "</p>" ;
echo "</form>"; ?>
//----------下面是拷贝文件到指定目录的程序---------
<?php if (is_uploaded_file($_FILES['file']['tmp_name']))
{
move_uploaded_file($_FILES['file']['tmp_name'], "image/".$_FILES['file']['name']); echo "<div align=center>上传成功.</div>";
} ?>
$HTTP_POST_FILES
代替
$_FILES
试试
要将所有的$_FILE都换成HTTP_POST_FILES.
echo "<p>";
echo "<input type=file name=upload_file>" ;
echo "</p>";
echo "<p>";
echo "<input type=submit name=Submit value=我要上传图片>";
echo "</p>" ;
echo "</form>"; ?>
//----------下面是拷贝文件到指定目录的程序---------
<?php
if (is_uploaded_file($HTTP_POST_FILES['upload_file']['tmp_name']))
{
move_uploaded_file($HTTP_POST_FILES['upload_file']['tmp_name'], "image/".$HTTP_POST_FILES['upload_file']['name']);
echo "<div align=center>上传成功.</div>";
}
?>改成这样试试.
<file name=uploadfile type=file ....试试!!!
错误的意思是没有对应的索引...也就是没有对应的下标
赞同换个名字test一下再说,错误的意思是说没有这个索引
就是数组里面没有这个值
; Whether to allow HTTP file uploads.
file_uploads = On
<form enctype="multipart/form-data" action="upload.php" method="post">
<input type="hidden" name="MAX_FILE_SIZE" value="1000000">
上传 <input name="userfile" type="file">
<input type="submit" value="上传">
</form>
upload.php:
$oldname = $_FILES['userfile']['name'];
$split_ipic=explode(".",$oldname);
$ext = $split_ipic[1]; //文件扩展名
$flag = 0;
if($ext=="xls")
{
mt_srand((double)microtime() * 1000000) ;
$newname = "plan".mt_rand();
$uploadpath = "upload/".$newname.".xls";
echo $uploadpath;
copy($userfile, $uploadpath);
$flag = $_FILES['userfile']['error'];
unlink($userfile);
}
^^^^^^^^^^
名字我换了,也不行php.ini中 file_uploads = On 错误的意思是没有对应的索引...也就是没有对应的下标
那该如何定义索引呢?????
error_reporting(7);
有什么用,放在什么地方
echo "<p>";
echo "<input type=file name=uploadfile>" ;
echo "</p>";
echo "<p>";
echo "<input type=submit name=Submit value=我要上传图片>";
echo "</p>" ;
echo "</form>"; ?>
//----------下面是拷贝文件到指定目录的程序---------
<?php
if (is_uploaded_file($_FILES['uploadfile']['tmp_name']))
{
move_uploaded_file($_FILES['uploadfile']['tmp_name'], "image/".$_FILES['uploadfile']['name']);
echo "<div align=center>上传成功.</div>";
}
?>再试试.
uploadfile这个名字一定要上下对应.
根据你的程序来看
????
而且$film_name也要换成相应的变量才可以!!!!
Form文件这样写
<form method=post action="upload.php" ENCTYPE="multipart/form-data">
<input type="file" name="upload_file">
<input type="submit" name="submit" value="我要上传图片">
</form>那个接受上传文件的程序这样写:
if (!copy($upload_file,"image/".$upload_file_name))
{
echo "复制文件失败";
}
else
{
echo "复制成功";
}
<?php
print_r($_FILES);
?>
另外你的php版本是?
就是不知道错在那里,我的php是4.23的,每次使用变量前,都要用global $变量,真是麻烦
谁有办法使得 使用变量不用global定义我怕分不够,等下,再开一个帖子,这里回答问题的人再去那里拿分啊!!!
extract($_POST);
无须另行声明,$_POST是自动全局变量
if($upload_file<>""){
}要加上{}才可以
其实是这样
$objectname=$_FILE['file']['name'];
copy($_FILE['file']['tmp_name'],$objectname)