三 首頁新聞發布讓你更新更輕松(下)
上一講裡我們已經實現了首頁新聞發布的基本功能在這一講裡我們再給它添磚加瓦使它的功能更為強大(一個好用的軟件其實也就是基本功能加上一批附屬功能這些附屬功能主要也是圖個方便而已呵呵)
首先我們再明確一下我們想獲得什麼方便我們不希望幾十天以前的東西我們忘了刪除結果還作為新聞發布在首頁(很丟臉的哦^&^)如果我們在基本實現中嵌入一段代碼比如說用filectime($filename)那麼在UNIX下我們就可以得到從年月日起以秒計到最後一次文件被改動的時間(在WINDOWS下返回的是文件生成的日期時間)而從 年月日起以秒計到現在的秒數可以用$mynow=mktime()來獲得減法判斷IF >我們期望的時間嘿嘿Sorryunlink($newspath$filename)……什麼?!您問這段代碼應該放在哪兒?您說呢呵呵
或許你並不是常在一台機器上上網當你獲得了一條新的新聞後卻不在你的愛機旁怎麼辦?最理想的莫過於在主頁上上傳文件咯你或許有一個頁面(Admin?)需要用密碼才能進入(假如你還愛惜自己的網站的話這是有必要的最好連文件名都不要讓別人知道呵呵)下面是一段到處可見的文件上載的代碼
<?
if(isset($upfile))
{
?>
已上載的文件信息如下:
文件存放路徑 : <?echo $upfile;?>
原始文件名 : <?echo $upfile_name;?>
文件大小(字節): <?echo $upfile_size;?>
文件類型 : <?echo $upfile_type;?>
<?
}
else
{
?>
<html>
<head><title>新聞上傳</title></head><body>
<form enctype=multipart/formdata method=post action=<?echo $PHP_SELF;?>>
<input type=hidden name=MAX_FILE_SIZE value=>
請選擇或輸入上傳文件名: <input name=upfile type=file>
<input type=submit value=上傳 name=submit>
</form>
</body></html>
<?
}
?>
這裡我們又見到了PHP和HTML結合的一種形式可以借鑒文件上載雖然方便但總給人一種不安全感一旦洩密你的服務器的系統安全就受到了威脅因為上載的文件可能是一些破壞性的執行文件(也就是病毒或黑客程序啦)穩妥的做法是寫一個在線編輯的文件下面是一個示例
〈?php
function mywritefile($filename$contents)
{
if($fp=fopen($filenamew))
{
fwrite($fpstrpslashes($contents));
fclose($fp);
return ;
}
else {return ;};
};
//判斷表單返回的變量
if($submitButton==完成)
{
$rs=mywritefile($page$test);
echo <a href =$page>$page</a><br>;
}
elseif($action==page) //變量action值為page的情況
{
$contents=$page;
$fp=@fopen($contentw+)or die(Could not open file!);
$contents=htmlspecialchars($contents);
fclose($fp);
echo <form action=adminphp?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>;//注意引用程序內變量的方式
echo <input type=text size= name=page>;
echo <input type=submit name=send value=選定>;
echo </form>;
}
?>
至此首頁新聞發布的實現已經可以告一段落了 我們可以發現任何一個功能(比較)強大的陳程式都是由一些簡單的功能組合而成的第三部分功能的整個完善過程使用疊加增強的方法和軟件工程的自頂向下逐層分析的開發方法是不一樣的這是一個適用於學習的方法自己寫寫習作還是挺管用的
From:http://tw.wingwit.com/Article/program/PHP/201311/21495.html