2012-12-29 58 views
5

我正在建立一個社交網絡類型的網站,用戶可以在其中上傳他們的項目進行評分。但是,我試圖改進網站佈局的方式,因此希望在用戶插入新項目後自動生成頁面。該add.php頁面有以下形式:PHP自動生成新頁面

<form action="add.php" method="post" autocomplete="on" enctype="multipart/form-data" action="<?php echo     $_SERVER['PHP_SELF']; ?>" method="POST" id="pic"> 
    <p> <label for="jname" class="iconic user"> Name of Jam <span class="required">*</span></label> <input type="text" name="jname" id="jname" value="<?php if (isset($_POST['jname'])) echo $_POST['jname']; ?>" required="required" placeholder="Input your Name of Jam here" /> </p> 

    <p> <select name="jtype" id="jtype" value="<?php if (isset($_POST['jtype'])) echo $_POST['jtype']; ?>" required="required"> 
      <option value="jam">Jam</option> 
      <option value="jelly">Jelly</option> 
      <option value="marmalade">Marmalade</option> 
      <option value="preserve">Preserve</option> 
     </select> </p> 

    <p> <label for="producer" class="iconic user"> Jam Producer <span class="required">*</span></label>  <input type="text" name="producer" id="producer" value="<?php if (isset($_POST['producer'])) echo $_POST['producer']; ?>" required="required" placeholder="Input the producer of the Jam here" /> </p> 
    Upload a picture of your jam: </br> </br> <input name="userfile" type="file" /> </br> 
    <input type="submit" name="submit" value="Register" />  
    <input type="hidden" name="submitted" value="TRUE" /> 

</form> 

當表單提交,然後我希望它生成新的用戶創建的項目新的一頁。有沒有一個相當簡單的方法來做到這一點?

乾杯

+1

你試過了什麼?你想創建一個新文件嗎?或者如何處理數據庫條目? –

回答

7

您不必爲每個項目實際創建新的html頁面。

你可以將這些信息保存到數據庫(例如mysql)。

然後,你可以創建另一個php文件,說「item.php」,並從MySQL數據庫,像這樣訪問不同的條目:

item.php ID = 1

+0

好吧,我的數據庫中的每個項目都會生成一個ID,並且我創建了一個item.php頁面。那麼我該如何去關聯這個id和頁面呢?這些項目在1頁中列出,然後我希望能夠點擊其中一個,並加載新頁面,並將該項目與關聯的ID相關聯。有沒有在線教程,我可以看看你知道嗎?歡呼 – Bic1245

+0

網上有很多教程,你可以嘗試谷歌搜索「初學者的php mysql」,但作爲middaparka建議我認真地建議你投資一些書。 這樣你就可以學得更快,然後在這裏提問:) –

+0

很多網站都在使用這種技術。那麼你可以根據ID var顯示。所以這些頁面在流派上類似(例如相同的佈局),但內容不同。 – user3522940

2

通常沒有新的頁面生成類似的東西。您應該創建一個模板並從其他來源(如XML文件或數據庫)加載動態信息,以便它看起來是一個全新的頁面。

剛:

  1. 看看每件商品頁面有共同
  2. 定義包含了常見的代碼
  3. 從數據庫
  4. 使用檢索動態信息(項目的相關信息爲例)模板PHP嵌入在HTML中以加載動態HTML

舉例:

Facebook不會爲每個用戶註冊創建一個新頁面。有一個HTML模板,用於定義個人資料照片的位置,帖子的位置和風格,好友列表的位置和風格以及任何個人資料頁面的常用資料,然後在您調用此頁面時加載不同的信息馬克,弗蘭克,傑夫等。

3

這通常不是這種網站的創建方式。 (即:你不會在表單提交時自己生成物理頁面)。相反,你通常會將表單數據存儲在數據庫中,然後根據URL檢索/顯示它 - 或者通過解碼URL本身通過「控制器」或使用查詢字符串變量(如?producerid=x)。這些數據將被用於填充模板。老實說,我真的很推薦你去拿一本最近的PHP書(就數據庫訪問而言,你應該使用PDO或MySQLi)或者遵循一些在線教程 - 儘管它最初看起來像這樣將不會是一個有意義的進展形式,從長遠來看,它可能會支付大量股息。

2

最好的和有效的做呢?它將數據存儲在數據庫中,並在用戶單擊特定項目時檢索它。有一件事,如果你的計劃的一部分是讓你的網站可以通過谷歌搜索引擎訪問,你必須生成個人網頁......因爲,谷歌只是一個網絡爬蟲...它不能進入​​MySQL或其他數據庫。