文章詳情頁(yè)
PHP個(gè)人網(wǎng)站架設(shè)連環(huán)講(四)
瀏覽:3日期:2024-02-26 16:06:59
三 首頁(yè)新聞發(fā)布,讓你更新更輕松(下) -----上一講里,我們已經(jīng)實(shí)現(xiàn)了首頁(yè)新聞發(fā)布的基本功能。在這一講里,我們?cè)俳o它添磚加瓦,使它的功能更為強(qiáng)大。(一個(gè)好用的軟件,其實(shí)也就是基本功能加上一批附屬功能,這些附屬功能主要也是圖個(gè)方便而已,呵呵) -----首先,我們?cè)倜鞔_一下我們想獲得什么方便。我們不希望幾十天以前的東西我們忘了刪除,結(jié)果還作為新聞發(fā)布在首頁(yè)(很丟臉的哦^&^)。如果我們?cè)诨緦?shí)現(xiàn)中嵌入一段代碼,比如說(shuō)用filectime($filename),那么在UNIX下,我們就可以得到從1970年1月1日起以秒計(jì)到最后一次文件被改動(dòng)的時(shí)間(在WINDOWS下返回的是文件生成的日期時(shí)間),而從 1970年1月1日起以秒計(jì)到現(xiàn)在的秒數(shù)可以用$mynow=mktime()來(lái)獲得,減法,判斷,IF >我們期望的時(shí)間,嘿嘿,Sorry,unlink($newspath.$filename)……什么?!您問(wèn)這段代碼應(yīng)該放在哪兒?您說(shuō)呢,呵呵。 或許,你并不是常在一臺(tái)機(jī)器上上網(wǎng),當(dāng)你獲得了一條新的新聞后卻不在你的愛(ài)機(jī)旁,怎么辦?最理想的莫過(guò)于在主頁(yè)上上傳文件咯。你或許有一個(gè)頁(yè)面(Admin?)需要用密碼才能進(jìn)入(假如你還愛(ài)惜自己的網(wǎng)站的話,這是有必要的,最好連文件名都不要讓別人知道,呵呵)。下面是一段到處可見(jiàn)的文件上載的代碼: <? if(isset($upfile)) { ?>;;已上載的文件信息如下: ;;;;文件存放路徑;;: <?echo $upfile;?> ;;;;原始文件名;;;;: <?echo $upfile_name;?> ;;;;文件大小(字節(jié)): <?echo $upfile_size;?> ;;;;文件類型;;;;;;: <?echo $upfile_type;?> <? };;else { ?> <html> <head><title>新聞上傳</title></head><body>;;<form enctype="multipart/form-data" method="post" action="<?echo $PHP_SELF;?>">;;<input type="hidden" name="MAX_FILE_SIZE" value="50000"> 請(qǐng)選擇或輸入上傳文件名: <input name="upfile" type="file">;;<input type="submit" value="上傳" name="submit"> </form> </body></html>;;<? } ?>;;-----這里我們又見(jiàn)到了PHP和HTML結(jié)合的一種形式,可以借鑒。文件上載雖然方便,但總給人一種不安全感。一旦泄密,你的服務(wù)器的系統(tǒng)安全就受到了威脅,因?yàn)樯陷d的文件可能是一些破壞性的執(zhí)行文件(也就是病毒或黑客程序啦)穩(wěn)妥的做法是寫(xiě)一個(gè)在線編輯的文件,下面是一個(gè)示例: 〈?php function mywritefile($filename,$contents){ if($fp=fopen($filename,"w")){ fwrite($fp,strpslashes($contents)); fclose($fp); return 1; };;else {return 0;}; }; //判斷表單返回的變量 if($submitButton=="完成"){ $rs=mywritefile("$page","$test"); echo "<a href ="$page">$page</a><br>"} elseif($action=="page") //變量action值為"page"的情況 {$contents="$page"$fp=@fopen($content,"w+")or die('Could not open file!'); $contents=htmlspecialchars($contents); fclose($fp); echo "<form action="admin.php?page=$page" method="POST" wrap=soft>"echo "$contents"echo "</textarea>"echo "<input type="submit" name="submitButton" value="完成">"echo "</form>"} else {echo "<form action="basename($PHP_SELF).?action=page" method="POST">";//注意引用程序內(nèi)變量的方式。 echo "<input type=text size=20 name=page>"echo "<input type="submit" name="send" value="選定">"echo "</form>"} ?> -----至此,首頁(yè)新聞發(fā)布的實(shí)現(xiàn)已經(jīng)可以告一段落了。 我們可以發(fā)現(xiàn),任何一個(gè)功能(比較)強(qiáng)大的陳程式都是由一些簡(jiǎn)單的功能組合而成的。第三部分功能的整個(gè)完善過(guò)程使用疊加增強(qiáng)的方法,和軟件工程的自頂向下,逐層分析的開(kāi)發(fā)方法是不一樣的。這是一個(gè)適用于學(xué)習(xí)的方法,自己寫(xiě)寫(xiě)習(xí)作還是挺管用的,呵呵。
標(biāo)簽:
PHP
排行榜
