请教PHP上传文件的接收代码问题
小弟初学PHP,想要了解POST上传文件至服务端与服务端接收并保存文件的流程,从网上找了两段代码,但一直调不通,找不到问题所在,向版上大虾求教,代码如下:
1. 上传代码
<br /><form enctype="multipart/form-data" action="upload.php" method="post"><br /><label for="file">请选择上传的文件</label><br /><input type="file" name="file" size="40" /><br /><br /><br /><input type="submit" name="submit" value="确定" /><br /></form><br />
2. 服务端代码
<br /><?php<br />//文件存储路径<br />$file_path="upload/";<br />//664权限为文件属主和属组用户可读和写,其他用户只读。<br />if(is_dir($file_path)!=TRUE) mkdir($file_path,0664) ;<br />//定义允许上传的文件扩展名<br />$ext_arr = array("gif", "jpg", "jpeg", "png", "bmp", "txt", "zip", "rar");<br /><br />if (empty($_FILES) === false) {<br /> //判断检查<br /> if($photo_up_size > 2097152){<br /> exit("对不起,您上传的照片超过了2M。");<br /> }<br /> if($_FILES["file"]["error"] > 0){<br /> exit("文件上传发生错误:".$_FILES["file"]["error"]);<br /> }<br /><br /> //获得文件扩展名<br /> $temp_arr = explode(".", $_FILES["file"]["name"]);<br /> $file_ext = array_pop($temp_arr);<br /> $file_ext = trim($file_ext);<br /> $file_ext = strtolower($file_ext);<br /> //检查扩展名<br /> if (in_array($file_ext, $ext_arr) === false) {<br /> exit("上传文件扩展名是不允许的扩展名。");<br /> }<br /> //以时间戳重命名文件<br /> $new_name = time().".".$file_ext;<br /> //将文件移动到存储目录下<br /> move_uploaded_file($_FILES["file"]["tmp_name"],"$file_path" . $new_name);<br /> //向数据表写入文件存储信息以便管理<br /> //*********** 代码略 ***********//<br /> echo "文件上传成功!";<br /> exit;<br />} else {<br /> echo "无正确的文件上传";<br />}<br />?><br />
3. 问题现象
通过上传代码选择文件,点击上传后,没有收到正确回复,而是显示了PHP服务端的代码,如下图所示:

------解决思路----------------------
看截图就知道,你不是以http方式访问的。
file:///c:/wamp/www/upload.php
1.首先你要启动wamp服务器。
2.把第一段代码保存为upload.html,保存在c:/wamp/www/文件夹
3.把第二段代码保存为upload.php,保存在c:/wamp/www/文件夹
4.在c:/wamp/www/,创建一个upload的folder
5.用http://localhost/upload.html访问。然后就可以了。

APHPDependencyInjectionContainerisatoolthatmanagesclassdependencies,enhancingcodemodularity,testability,andmaintainability.Itactsasacentralhubforcreatingandinjectingdependencies,thusreducingtightcouplingandeasingunittesting.

Select DependencyInjection (DI) for large applications, ServiceLocator is suitable for small projects or prototypes. 1) DI improves the testability and modularity of the code through constructor injection. 2) ServiceLocator obtains services through center registration, which is convenient but may lead to an increase in code coupling.

PHPapplicationscanbeoptimizedforspeedandefficiencyby:1)enablingopcacheinphp.ini,2)usingpreparedstatementswithPDOfordatabasequeries,3)replacingloopswitharray_filterandarray_mapfordataprocessing,4)configuringNginxasareverseproxy,5)implementingcachingwi

PHPemailvalidationinvolvesthreesteps:1)Formatvalidationusingregularexpressionstochecktheemailformat;2)DNSvalidationtoensurethedomainhasavalidMXrecord;3)SMTPvalidation,themostthoroughmethod,whichchecksifthemailboxexistsbyconnectingtotheSMTPserver.Impl

TomakePHPapplicationsfaster,followthesesteps:1)UseOpcodeCachinglikeOPcachetostoreprecompiledscriptbytecode.2)MinimizeDatabaseQueriesbyusingquerycachingandefficientindexing.3)LeveragePHP7 Featuresforbettercodeefficiency.4)ImplementCachingStrategiessuc

ToimprovePHPapplicationspeed,followthesesteps:1)EnableopcodecachingwithAPCutoreducescriptexecutiontime.2)ImplementdatabasequerycachingusingPDOtominimizedatabasehits.3)UseHTTP/2tomultiplexrequestsandreduceconnectionoverhead.4)Limitsessionusagebyclosin

Dependency injection (DI) significantly improves the testability of PHP code by explicitly transitive dependencies. 1) DI decoupling classes and specific implementations make testing and maintenance more flexible. 2) Among the three types, the constructor injects explicit expression dependencies to keep the state consistent. 3) Use DI containers to manage complex dependencies to improve code quality and development efficiency.

DatabasequeryoptimizationinPHPinvolvesseveralstrategiestoenhanceperformance.1)Selectonlynecessarycolumnstoreducedatatransfer.2)Useindexingtospeedupdataretrieval.3)Implementquerycachingtostoreresultsoffrequentqueries.4)Utilizepreparedstatementsforeffi


Hot AI Tools

Undresser.AI Undress
AI-powered app for creating realistic nude photos

AI Clothes Remover
Online AI tool for removing clothes from photos.

Undress AI Tool
Undress images for free

Clothoff.io
AI clothes remover

Video Face Swap
Swap faces in any video effortlessly with our completely free AI face swap tool!

Hot Article

Hot Tools

VSCode Windows 64-bit Download
A free and powerful IDE editor launched by Microsoft

WebStorm Mac version
Useful JavaScript development tools

mPDF
mPDF is a PHP library that can generate PDF files from UTF-8 encoded HTML. The original author, Ian Back, wrote mPDF to output PDF files "on the fly" from his website and handle different languages. It is slower than original scripts like HTML2FPDF and produces larger files when using Unicode fonts, but supports CSS styles etc. and has a lot of enhancements. Supports almost all languages, including RTL (Arabic and Hebrew) and CJK (Chinese, Japanese and Korean). Supports nested block-level elements (such as P, DIV),

SAP NetWeaver Server Adapter for Eclipse
Integrate Eclipse with SAP NetWeaver application server.

Notepad++7.3.1
Easy-to-use and free code editor
