ホームページ >バックエンド開発 >PHPチュートリアル >ファイルのアップロードに関するページでエラーが発生しました。
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml"><head><meta http-equiv="Content-Type" content="text/html; charset=gb2312" /><title>upload.</title><style type="text/css"><!--.STYLE2 { font-family: "宋体"; font-weight: bold;}--></style></head><body><style type="text/css"><!--tr,td{font-size:10px}--></style><center> <h1 class="STYLE2">upload your file</h1> <p> <table border="1" cellspacing="0" cellpadding="1" bordercolordark="#ffffff" bordercolorlight="#0000ff" width="400"> <form action="up_back.php" method="post" enctype="multipart/form-data"> <tr bgcolor="#ccccff"> <td>chose your file:</td> <td><input type="file" name="upfile" size=32 /></td> </tr> <tr> <td>describe:</td> <td><input type="text" name="describe" size="42" /></td> </tr> <tr> <td>owner:</td> <td><input type="text" name="owner" size="42" /></td> </tr> <tr> <td>submit:</td> <td><center><input type="submit" value="submit" /></center></td> </tr> </form> </table> </p></center> </body></html>
<?phpif (!$_POST["upfile"]&&$_FILES["upfile"]["name"]==""){ echo "no file<p>"; echo "click<a href=\"up_forward.html\">there</a>return!";}else { $filepath="upload/"; $name=$filepath.$_FILES["upload"]["name"]; while (file_exists($name)) { $temp=explode(".", $name); $name=$temp[0]."0".".".$temp[1]; } if(move_uploaded_file($_FILES["upfile"]["tmp_name"], $name)) { if ($_POST["owner"]) { $owner=$_POST["owner"]; } else { $owner="NULL"; } if ($_POST["describe"]) { $describe=$_POST["describe"]; } else { $describe="NONE"; } $time=date("y-m-d H:m:s"); $content=$_FILES["upload"]["name"]."||".$owner."||".$describe."||".$time."\n"; file_put_contents("record.dat", $content.FILE_APPEND); echo "name:".$_FILES["upfile"]["name"]; echo "<p>"; echo "is upload successfull.<p>"; echo "click<a href=\"up_forward.html\">there</a>return!"; } else { echo "upload error!<p>"; echo "fail!<p>"; echo "click<a href=\"index.php\">there</a>check!"; }}?>
この行 $name=$filepath.$_FILES["upload"]["name"];
アップロードされた最初のファイルには name="file" がありますが、 "upload".
move_uploaded_file($_FILES["upfile "]["tmp_name"], $name) 次のパラメータにはパスがありません
move_uploaded_file($_FILES["upfile"]["tmp_name"], $ name) 次のパラメータにはパスがありません
彼の $name=$filepath .$_FILES["upfile"]["name"];以上です
1.
if (!$_POST["upfile"]&& $_FILES["upfile"]["name"]=="")
==>
if ($_FILES["upfile"]["name"]=="") //このようにして、ファイルを選択します
2.
$name=$filepath.$_FILES["upload "]["name"];
==》
$name=$filepath.$_FILES["upfile"]["name" ];
3. ファイルが存在する場合。ループ全体がデッドサイクルになりますか?
if (File_exists ($ name)) {
$ TEMP = Explode (".", $ Name); に変更できますか? 0".".".$temp[1];
}
4. $content=$_FILES[" upfile"]["name"]."||".$owner."||".$describe 。 "||".$time."n"
1.
==>
if ($_FILES["upfile"]["name"]=="") //これにより、ファイルを選択するかどうかを決定できます
2.
$name=$filepath.$_FILES [ "upload"]["name"];
==》
$name=$filepath.$_...
このように修正すると、確かにモジュール機能が完成しました...ありがとうございます。よろしくお願いします。
この 1 行 $name=$filepath.$_FILES["upload"]["name"];
アップロードされた最初のファイルには name="file" がありますが、"upload" はありません。 、確かにここに問題があります。ありがとうございます
1.
if (!$_POST["upfile"]&&$_FILES["upfile"]["name"]=="")
==> ;
2.
$name=$filepath.$_FILES["upload" ]["名前"];
==》
$ name=……
神レベルの人が教えられました