2015-05-14 26 views
-5

不知道我是否被允許鏈接視頻或其他任何東西,但我的想法是,我是一個開始的Web開發人員。在過去的三個月中,我一直在試圖自學HTML,CSS,JavaScript,jQuery,PHP,MySQL和MySQLi。開發人員在創建網站時是否使用大量小包裝?

我一直在看對PHP的教程和這個傢伙保持分離他的代碼成微小位,並使用將其放置在外部文件中,他隨後將包括在他的主代碼PHP的require_once()include()

這是你真正開發一個網站的方式嗎?我發現它非常具有挑戰性,我們正在用HTML代碼搞亂PHP,看起來好像有人把所有這些東西扔在那裏,並給它一個很好的震撼。

我一直認爲,當開發一個好辦法是:

  1. 你做網站的HTML和CSS部分,
  2. 你使用JavaScript/jQuery的或任何你喜歡的行爲,
  3. 之後,一切都在尋找和行爲,因爲你想你連接到數據庫使用PHP。

這段視頻徹底抹殺了我的信仰。這是人們如何建立一個網站?爲了使其儘可能重用,將代碼放在外部文件中,然後將其包含在項目中,並將HTML與PHP混合(就像在while循環中那樣)?

頁面沒有實際結構。如果有人試圖理解你的代碼,他們將不得不去獲取你創建的每一個難題。

最後的結構對我來說很糟糕。但是,我只是一個初學者,所以如果有人能爲我澄清這一點,我會非常感激。

下面是我在談論的代碼片段:

<?php require_once("../includes/db_connection.php"); ?> 
    <?php require_once("../includes/functions.php"); ?> 
    <?php include("../includes/layouts/header.php"); ?> 

    <div id="main"> 
     <div id="nav">&nbsp; 
      <ul class="subjects"> 
       <?php 
        // Perform database query 
        $query = "SELECT * FROM mysqlsubjects 
           WHERE visible = 1 
           ORDER BY position ASC"; 
        $subject_set = mysqli_query($connection, $query); 
        confirm_query($subject_set); // this is a defined function  
       ?> 
       <?php // use returned data (if any) 
        while($subject = mysqli_fetch_assoc($subject_set)) { // output data from each row through the while loop 
       ?> 
       <li> 
        <?php echo $subject["menu_name"]; // (1) ?> 
        <?php 
         $query = "SELECT * FROM pages 
            WHERE visible = 1 
            AND subject_id = {$subject["id"]} 
            ORDER BY position ASC"; 
         $page_set = mysqli_query($connection, $query); 
         confirm_query($subject_set); 
        ?> 
        <ul class="pages"> 
         <?php 
          while($page = mysqli_fetch_assoc($page_set)) { 
         ?> 
         <li> 
          <?php echo $page["menu_name"]; ?> 
         </li> 
         <?php } ?> <!-- ending the second loop --> 
         <?php mysqli_free_result($page_set); ?> 
        </ul> 
       </li> 
       <?php } ?> <!-- closing the while statement --> 
       <?php mysqli_free_result($subject_set); ?> 
      </ul> 
     </div> 
     <div id="page"> 
      <h2>Manage Content</h2> 
     </div> 
    </div> 
    <?php include("../includes/layouts/footer.php"); ?> 
+0

從格式化問題開始,您可能會獲得幫助。 –

+0

有沒有一個問題,或者你只是說明信息形式的在線視頻 – Andrew

+0

許多很好的問題根據專家的經驗產生一定程度的意見,但對這個問題的答案將傾向於幾乎完全基於意見,而不是事實,參考或具體專業知識我建議你找一個開發論壇(可能是[reddit](https://www.reddit.com/)?)來制定一般性。然後,當您遇到特定的編碼問題時,請回到StackOverflow,我們很樂意提供幫助。 –

回答

2

這將取決於網站正在構建的類型。

就個人而言,如果我建立一個大型網站,那麼PHP包括將是一種方式,因爲您只需要創建網站的一部分,然後將其拉入即可。將PHP添加到PHP文檔非常合適HTML提供了結構。

同樣在上面的例子中,拉取包含函數和常量的分離文件是一個非常正常的過程,因爲它們將位於易於查找的文件中。

而如果我要創建一個單一的頁面類型的網站,然後將所有的HTML包括到單獨的文檔中,並將其分離爲JavaScript和CSS文件。

+0

減1沒有評論?當你不知道你爲什麼給出一個負分時,我喜歡它。 – Aaron

+0

是啊,一樣:) –

1

真的沒有什麼特別之處,但起初可能看起來很具挑戰性。 要點是,你可以開發任何一種方式,只有在教程中的方式是一個更好的做法。 在本教程中,開發人員包含了一些文件,具有特定的功能:

<?php require_once("../includes/db_connection.php"); ?> This may include the connection to the database 
<?php require_once("../includes/functions.php"); ?> This file may contain a list of functions, that could also be broken into more files. 
<?php include("../includes/layouts/header.php"); ?> Contains the header area 
<?php include("../includes/layouts/footer.php"); ?> Contains the footer area 

同樣可以從ID #main內容來完成。通過這種方式,您可以輕鬆地將站點代碼分解爲組件並在需要時包含它們。

有一種方法可以將所有內容放到一個文件中,但是當您創建越來越多的頁面時,您會看到它,這是錯誤的方法。

+0

謝謝你的答案亞倫和亞歷克斯,我真的很感激它。另外,謝謝你幫我用格式化的Jay。 –

相關問題