一个关于文件上传的页面.遇到错误.求大神指导指导
<!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 id="upload-nbsp-your-nbsp-file">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>
这个是用来前台的页面调用下面的php.
<?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!"; }}?>
问题就在于上传之后,提示文件上传成功,但是upload文件夹里面文件名是0的倍数,而且没有文件格式..这个是怎么回事呢?
提示的错误就是下面这些..
Notice: Undefined index: upfile in D:\phpnow\htdocs\b\up_back.php on line 2
Notice: Undefined index: upload in D:\phpnow\htdocs\b\up_back.php on line 10
Notice: Undefined offset: 1 in D:\phpnow\htdocs\b\up_back.php on line 14
Notice: Undefined index: upload in D:\phpnow\htdocs\b\up_back.php on line 35
name:10.jpg
回复讨论(解决方案)
这一行 $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. 如果你的文件存在了。while循环不就成了死循环了吗,可以改为:
if(file_exists($name))
{
$temp=explode(".", $name);
$name=$temp[0]."0".".".$temp[1];
}
4. $content=$_FILES[" upfile"]["name"]."||".$owner."||".$describe."||".$time."\n";
1.
if (!$_POST["upfile"]&&$_FILES["upfile"]["name"]=="")
==>
if ($_FILES["upfile"]["name"]=="") //这样就能判断是否选择文件了
2.
$name=$filepath.$_FILES["upload"]["name"];
==》
$name=$filepath.$_……
谢谢你的帮助,根据这样修改后,确实完成了模块功能...万分感谢.
这一行 $name=$filepath.$_FILES["upload"]["name"];
第一个文件上传的name="file" , 没有"upload" 啊.
恩,确实这里有点毛病.谢谢你
1.
if (!$_POST["upfile"]&&$_FILES["upfile"]["name"]=="")
==>
if ($_FILES["upfile"]["name"]=="") //这样就能判断是否选择文件了
2.
$name=$filepath.$_FILES["upload"]["name"];
==》
$name=……
大神级人物 受教了

熱AI工具

Undresser.AI Undress
人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover
用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

Video Face Swap
使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱門文章

熱工具

記事本++7.3.1
好用且免費的程式碼編輯器

SublimeText3漢化版
中文版,非常好用

禪工作室 13.0.1
強大的PHP整合開發環境

Dreamweaver CS6
視覺化網頁開發工具

SublimeText3 Mac版
神級程式碼編輯軟體(SublimeText3)

JWT是一種基於JSON的開放標準,用於在各方之間安全地傳輸信息,主要用於身份驗證和信息交換。 1.JWT由Header、Payload和Signature三部分組成。 2.JWT的工作原理包括生成JWT、驗證JWT和解析Payload三個步驟。 3.在PHP中使用JWT進行身份驗證時,可以生成和驗證JWT,並在高級用法中包含用戶角色和權限信息。 4.常見錯誤包括簽名驗證失敗、令牌過期和Payload過大,調試技巧包括使用調試工具和日誌記錄。 5.性能優化和最佳實踐包括使用合適的簽名算法、合理設置有效期、

會話劫持可以通過以下步驟實現:1.獲取會話ID,2.使用會話ID,3.保持會話活躍。在PHP中防範會話劫持的方法包括:1.使用session_regenerate_id()函數重新生成會話ID,2.通過數據庫存儲會話數據,3.確保所有會話數據通過HTTPS傳輸。

PHP8.1中的枚舉功能通過定義命名常量增強了代碼的清晰度和類型安全性。 1)枚舉可以是整數、字符串或對象,提高了代碼可讀性和類型安全性。 2)枚舉基於類,支持面向對象特性,如遍歷和反射。 3)枚舉可用於比較和賦值,確保類型安全。 4)枚舉支持添加方法,實現複雜邏輯。 5)嚴格類型檢查和錯誤處理可避免常見錯誤。 6)枚舉減少魔法值,提升可維護性,但需注意性能優化。

SOLID原則在PHP開發中的應用包括:1.單一職責原則(SRP):每個類只負責一個功能。 2.開閉原則(OCP):通過擴展而非修改實現變化。 3.里氏替換原則(LSP):子類可替換基類而不影響程序正確性。 4.接口隔離原則(ISP):使用細粒度接口避免依賴不使用的方法。 5.依賴倒置原則(DIP):高低層次模塊都依賴於抽象,通過依賴注入實現。

在PHPStorm中如何進行CLI模式的調試?在使用PHPStorm進行開發時,有時我們需要在命令行界面(CLI)模式下調試PHP�...

如何在系統重啟後自動設置unixsocket的權限每次系統重啟後,我們都需要執行以下命令來修改unixsocket的權限:sudo...

使用PHP的cURL庫發送JSON數據在PHP開發中,經常需要與外部API進行交互,其中一種常見的方式是使用cURL庫發送POST�...
