- 论坛徽章:
- 0
|
8-15.php 和 8-16.php 一个图片上传的程序。 但是在标红的地方好像出问题了。以为我直接点击确认提交的时候并不提示没有选择文件而是提示文件上传失败。同时也无法正确的上传图片。
程序是清华大学出版社的《php网络编程从入门到精通》一书中的代码。烦请大家看下是什么地方出问题了。谢谢了
8-15.php
<html>
<head>
<title>文件上传的前台页面</title>
</head>
<body>
<form ENCTYPE="multipart/form-data" ACTION="8-16.php" METHOD="POST">
<input name="userfile" type="file">
<p>
<input type=submit value="确认提交">
<input type=reset value="重新选择">
</body>
</html>
-----------------------------------------------------------------------------
8-16.php
<html>
<head>
<title>文件上传后台处理页面</title>
</head>
<body>
<?
if($upfile=="none") //没有选定文件的处理
{
echo "没有选择文件"; //显示提示信息
echo "<p>";
echo "点<a href=\"8-15.php\">这里</a>返回"; //给出返回连接
}
else //选定文件
{
$filepath="images/"; //定义路径
$filename=$filepath.$upfile_name; //新的路径及文件名
echo $upfile_name; //显示文件名
echo "<p>";
echo $upfile_size; //显示文件大小
echo "<p>";
echo $upfile_type; //显示文件类型
if(copy($upfile,$filename)) //复制文件的目标路径
{
unlink($upfile); //删除原有文件
echo "<p>";
echo "指定文件已经成功上传!";
echo "<p>";
echo "点<a href=\"8-15.php\">这里</a>返回"; //给出返回连接
}
else
{
echo "文件上传失败!";
}
}
?>
</body>
</html>
修改后的代码-----------------------------------------------------
8-16a.php
<html>
<head>
<title>文件上传后台处理页面</title>
</head>
<body>
<?php
if($userfile == "none") //没有选定文件的处理
{
echo "没有选择文件"; //显示提示信息
echo "<p>";
echo "点<a href=\"8-15.php\">这里</a>返回"; //给出返回连接
}
else //选定文件
{
$uploaddir = '/var/www/html/images/' ;
$uploadfile = $uploaddir . basename ( $_FILES [ 'userfile' ][ 'name' ]);
echo '<pre>' ;
if ( move_uploaded_file ( $_FILES [ 'userfile' ][ 'tmp_name' ], $uploadfile ))
{
echo "<p>";
echo "指定文件已经成功上传!";
echo "<p>";
echo "点<a href=\"8-15.php\">这里</a>返回";
}
else
{
echo "文件上传失败!";
}
print_r ( $_FILES );
print "</pre>" ;
}
?>
</body>
</html>
[ 本帖最后由 wstczyl 于 2009-7-9 14:27 编辑 ] |
|