2014-08-30 73 views
0

爲了給什麼我試圖通過抽樣做一些背景:如何使用JavaScript創建一個帶有URL的新HTML頁面?

  1. 比爾輸入一些信息到表單
  2. 是動態生成一個新的HTML網頁,其中顯示中內容的形式對信息
  3. 法案得到可以共享給其他人的鏈接,這樣他們就可以看到他在表單中輸入並與之交互

因此,例如,當你創建計算器一個新的一個新的論壇帖子帶有問題ID的頁面被創建(例如, G。 https://stackoverflow.com/questions/12345/question-title)。我如何動態生成這樣的新頁面?

回答

0

我想這取決於你想使用的技術。 我可以在php/symfony中給你一個例子。

首先,你創建一個數據庫表PAGE,它有一些字段:誰創建,upvotes,標題和事件對其他表格行如郵政或用戶的影響。其中一個字段是標識符(新的一頁 - 在這裏以你爲例)。然後在symfony中寫一個路徑/pages/{youridentifier},你可以在特定的控制器中訪問youridentifier,現在當有人輸入這個url時,它們會調用一個控制器。控制器擁有所有的邏輯。您可以獲取所有所需信息,並將其呈現在模板中並提供給用戶。

所以基本上網頁是在後臺創建的。如果你想使用JavaScript,你可以在後端使用node.js,但這與前端JavaScript內容生成不一樣。

0

這是一個不平凡的問題。你正在談論構建一個應用程序。從概念上講,您至少需要1)將輸入的信息保存到某處,最好是數據庫2)創建一個頁面,該頁面通過URL接受參數,根據這些參數在數據庫中查找信息,然後以預定義的格式輸出它。這通常使用PHP和ASP等語言完成。

有很多開源的軟件應用程序可以執行各種功能(如維基,論壇等),所以如果你想做的事情已經可用,只需安裝其中一個應用程序並將其配置爲您的需求。也有可用的開源框架(如CodeIgniter Symfony,Zend等),爲您提供開發自定義應用程序所需的許多工具。

0

像您的示例頁面12345 /新頁面這樣的頁面不是實際頁面,而是由某些服務器端框架與來自數據庫的內容構建。 因此,爲了生成此內容,您需要在某些持久性存儲中保存所有稍後要恢復的數據(用戶「a」的輸入,稍後可由用戶「b」訪問)(可能是數據庫存儲引擎,如mysql或甚至在服務器上的文件系統文件系統),並將此內容標記爲特定的ID,以便以後再恢復。 如果您現在通過像http://mypage.com/index.php?id=2921這樣的鏈接訪問您的頁面,您可以通過$ _GET ['id']訪問該id腳本,並從存儲中加載特定內容以將其回顯到html頁面。

所以它不是關於JavaScript,但只有服務器端腳本與PHP或類似的語言。

2

「頁面創建」必須在後端完成。通過使用JavaScript,您可以做的最多的事情就是發送一些信息,這些信息將用作創建過程的輸入。最後,後端應該返回URL。

相關問題