⑴ php網頁轉html網頁怎麼弄
雖然不能保證把每個動態頁面都轉化為靜態的html文件,但如果網站是駐留在apache伺服器上,則只需一個簡單的小腳本就可以把大多數動態頁面都轉換成html文件。
確定需要轉換成後綴為html的php文件
目標是那些名下包含動態子頁較多的網頁。以「index.php?category=x」為例,我們需要對「index.php」之後的動態子頁進行轉換。 例如,如果網站里有一個名為「arts and crafts」的子目錄,url為「index.php?category=1」,其它子目錄和這個url只在最後的變數上不同,因此我們需要修改當index.php之後跟隨變數時伺服器對它的打開方式。
通知伺服器在接受一個html頁面的調用請求後打開一個php文件
需要在伺服器上index.php所在的目錄下放置一個.htaccess文本文件。.htaccess文件是apache伺服器上的一個目錄配置設置文件,它提供了針對目錄改變配置的方法,即在一特定的文檔目錄中放置一個包含一個或多個指令的文件(.htaccess文件),來作用於此目錄及其所有子目錄。.htaccess的功能包括設置網頁密碼、設置發生錯誤時出現的文件、改變主頁文件名、禁止讀取文件名、重新導向文件、增加mime類別、禁止列目錄下的文件等。
在需要針對目錄改變伺服器的配置,而對伺服器系統沒有root許可權時,應該使用.htaccess文件。如果伺服器管理員不願意頻繁修改配置,則可以允許用戶通過.htaccess文件自己修改配置,尤其是isp在一台機器上提供多個用戶站點,而又希望用戶可以自己改變配置的情況下,一般會開放部分.htaccess的功能給使用者自行設置。對於vdeck用戶來說,可能需要先創建一個文本文件,然後在管理面板將其更名為.htaccess。現在我們需要在伺服器端指定一些變數。比方說,我需要把「?category=x」這個變數改成「directory-x.html」,這樣就能消除動態頁面無法被搜索引擎檢索的問題。
在開始創建伺服器變數前,我們需要先在這個新建的.htaccess文件中創建一個rewrite engine (url重寫工具)。只需要在文件第一行寫上
rewriteengine on
這就等於告訴伺服器我們要改變一些文件的處理方式。接下來的一行就要指定重寫規則:
rewriterule ^directory-([0-9]*.* index.php?category=$1 [l,nc]
這個指令表明:只要接到url中包含「directory-0」到「directory-9」的任意靜態網頁的頁面調用請求,伺服器將以「index.php?變數」地址返回給調用用戶。
必要在更改實際的php頁面之前先進行一下測試。可以對上面的"重寫規則"進行測試。首先新開一個瀏覽器窗口,在地址欄中輸入「directory-1.htm」或「directory-1.html」,如果我們看到的頁面顯示為「index.php?category=1」就表明改寫規則工作正常。
讓搜索引擎看到我們的靜態化頁面
需要讓搜索引擎能夠看到我們經過「改頭換面」的新的網頁地址。那麼,是不是需要趕緊把網站再向搜索引擎提交一遍呢? 不用這么費勁,我們只需打開php文件編輯一下就行了。不過在此之前,應記得將要修改的每個腳本都做個備份,將其存放在硬碟上。然後需要確定創建更改鏈接地址的程序的不同地方。最好在前端而不要在後台進行更改。php文件將會從.htaccess文件中得到形如「index.php?category=x」之類的信息。我們需要把這些動態生成的網頁地址更改一下,並以靜態化頁面地址顯示給用戶和搜索引擎。即將所有url中包含「index.php?category=」的部分替換為「directory-」,並加上.html後綴。
⑵ PHP如何生成HTML的思路
一、 具備本地調試PHP的功能
在WINDOWS XP操作系統下,筆者建議你可以到網上下載一個PHP+MYSQL+APHCHE的伺服器套裝,如華軍軟體園,去那裡搜索一下就可以下載到。下載完後默認安裝即可,這樣您就具備了在本地測試PHP的功能了,省去了很多手動配置的麻煩,怎麼樣,簡單吧,OK,這僅僅只是第一步。
二、 構思新聞發布系統所具備的功能
首頁的新聞發布往往是通過後台更新的,後台的更新無非是由添加、編輯、刪除數據等基本的功能所實現的。在這里,你可以使用網頁設計軟體來構建你的想要的後台界面,其功能的實現當然是要用到PHP嘍。這一步建議您先想好新聞發布系統要有的功能。在這里,如何用PHP添加、編輯、刪除數據就不再重復,因為重點是如何在這基礎上生成靜態技術。
三、 PHP生成HTML的技術原理。
哈哈。費話說了那麼多,終於到了該講的地方了。其實,這一原理並不復雜,綜合地來講的話,應該是PHP中一個替換數據語法的應用。OK,講一個簡單範例吧,一步一步地分析!相信聰明的你能看得明白的咯,仔細看好每一步即可,在這里,只是引導大家如何做而已,具體的可以實踐一下!
(1)在MYSQL里新建一資料庫,命名為 database (可自定義),新建一表,命名為 news(因為是新聞發布嘛,取個好記的名字即可,可自定義),然後建立這幾個欄位名:
id (自動遞增,這是關鍵,類型:INT)
title (顧名思義,新聞標題,類型可取 TEXT)
content (新聞內容,類型可取 TEXT)
path (HTML文件路徑,類型可取 TEXT)
(2)建立 conn.php
這是連接資料庫的PHP文件,你可以把連接數據的語句單獨放在這一文件里,以後多個需要連接資料庫的文件直接引用這個文件即可。
(3)設計添加新聞的表格 add.form 簡單的源代碼如下:
12345<form method=」post」 action=」add.php」> //提交至 add.php新聞標題:<input type=」text」 name=」title」 size=」20」><br>新聞內容:<textarea name=」content」 cols=」10」 rows=」25」></textarea><br><input type=」submit」 name=」提交」></form>(4)建立一個 HTML 的模板,另存為model.htm,和 add.php可以在同一目錄下。
示例源代碼:
{ }大括弧內的內容即是要被替換的內容,整個靜態模板的設計可以根據自己的思路,但{ }內被替換的內容必須包含在內,如上面的{title},{content};咔咔~簡單地說,設計好一個很好看的新聞模板後,把要被替換的如{title},{content}等標記放到需要的地方就可以了撒。
(5)詳解 add.php 源碼
OK,整個生成HTML的示例源碼就到這里,其關鍵是用了替換的方法。
$str=str_replace(「{被替換的內容}」,$替換的內容,$str);
因此,總結一下以上的做法:先設計好新聞模板,把需要被替換的內容用{ }放到模板中相應的位置,然後設計表單,再是最後的表單處理程序,把從表單中獲取的變數替換模板中相應的內容即可,這樣每次都會生成不同的HTML;如果需要修改HTML的內容也是一樣的,獲得修改後的表單內容後,先用 update 語句更新資料庫,再重新替換一下模板中的內容即可;刪除的話,先delete表中要刪除的內容,再用unlink($path) 來刪除HTML的物理文件即可。
⑶ 怎樣給php頁面里添加html頁面
PHP中嵌入HTML有多種方式,這里列出幾種常用方式:
PHP代碼輸出HTML代碼;
HTML代碼中嵌入PHP;
PHP中使用include ()函數引用Html文件;
示例:
HTML代碼(test.html)
<body>
<p>我是一段Html代碼</p>
</body>
方式一:
<?php
$int=rand(0,1);
if($int==1){
echo"<p>取到的隨機數是1</p>";
}else{
echo"<p>取到的隨機數不是1</p>";
}
?>
⑷ php怎樣直接輸出HTML代碼而不被編譯
通過PHP的一個內置的函數htmlspecialchars($html);
如果你要是先把一段HTML代碼存入資料庫在取出來的話
可以這樣入庫是 htmlspecialchars($html , ENT_QUOTES);
出庫是 htmlspecialchars_decode($html , ENT_QUOTES);
⑸ php如何生成HTML頁面 要詳細的生成過程代碼
很簡單,用ob_start壓制,然後保存到一個html頁面就可以了,寫了個小演示
訪問時在後面加參數 ?id=xxx xxx為任意數字,你把裡面的輸出換成你的動態頁面就可以了,代碼里有解釋
<?php
ob_start();
/*下面的內容就是你原來的動態頁面*/
$id=isset($_GET["id"])?$_GET["id"]:'';
if ($id!=''){
echo "原使用參數的頁面 參數為".$id."</br>已生成<a href=\"$id.html\">$id.html</a>";
}
/*結束*/
$info=ob_get_contents();
$file=fopen($id.'.html','w');
fwrite($file,$info);
fclose($file);
?>