2012-11-20 155 views
-3

我想知道您是否可以提供一點幫助。驗證PHP生成的HTML代碼

首先,IM在高初學者拉特與編碼所以不要對我太狠心:)

我想在我的網站驗證碼,我得到我討厭錯誤無法擺脫。 這裏是源代碼:

<div id="mainWrapperbackground"> 
    <div id="allContentbackground"> 
     <img src="img/banner.png" alt="banner" id="banner"> 
     <img src="img/left.jpg" alt="leftside" id="left"> 
     <img src="img/right.jpg" alt="rightside" id="right"> 
     <img src="img/nav.png" alt="navigation" id="fullnav"> 
     <img src="img/poleright.png" alt="poleright" id="poleright"> 
     <img src="img/poleleft.png" alt="poleleft" id="poleleft"> 
     <img src="img/footer.jpg" alt="footer" id="footerimg"> 
     <form method="get" action="/search" id="search"> 
      <input name="index.php?page=recipe1" type="text" size="40" placeholder="Search..." > 
     </form> 

     <div id="footer"> 
      <em>Rising Cupcakes | Fairystreet 182st | 4500 Wonderland | Tel. +88 21 45 65</em> 
     </div></div></div> 
<!DOCTYPE html> 
<html> 
    <head> 
     <meta http-equiv="Content-Type" content="text/html;charset=utf-8" /> 
     <link href="styles.css" rel="stylesheet" /> 
     <title>Cupcake Lovers</title> 
    </head> 
    <body> 
     <div id="mainWrapper"> 
      <div id="allContent"> 
       <div id="mainWrapperbackground"> 
        <div id="allContentbackground"> 
         <nav id="global-nav"> 
          <a href="index.php?page=contact"> <img src="img/contactb.png" alt="contactb" id="contactb"></a> <a href="index.php?page=guestbook"><img src="img/guestbookb.png" alt="guestbookb" id="guestbookb"></a> <a href="index.php?page=newsletter"><img src="img/newsletterb.png" alt="newsletterb" id="newsletterb"></a> <a href="index.php?page=history"><img src="img/historyb.png" alt="historyb" id="historyb"></a> <a href="mailto:[email protected]"><img src="img/maillogo.png" alt="maillogo" id="maillogo"></a> <a href="http://www.facebook.com"><img src="img/fblogo.png" alt="facebooklogo" id="fblogo"></a> <a href="index.php?page=home"><img src="img/homeb.png" alt="homeb" id="homeb"></a> <a href="index.php?page=recipegallery"><img src="img/recipesb.png" alt="recipesbutton" id="recipesb"> </a> 
         </nav> 
         <img src ="img/cupcake.png" alt="cupcake" id="cupcake"> 
         <div id="homehead"> 
         <h5>Welcome! 
        </h5> 
       </div> 
       <p class="first">Welcome to <b>"Cupcake Lovers"!</b> 
       <br> 
        <br> 
         We have opened this homepage to introduce you to Celina's 6 most famous cupcake recipes. 
         <br> 
          Celina's recipes follow the principle of being easy to make, beautiful to look at, and delicious to eat! 
          <br> 
           If like Celina, cupcakes are your passion, then go learn about the history of cupcakes or join our 
           <br> 
            newsletter and get updates about what's going on in the world of cupcakes. 
            <br> 
             <br> 
              Don't forget to sign our guestbook! 
              <br> 
               <br> 
                Happy baking, 
                <br> 
                 <em>Celina's cupcakes for Cupcake Lovers</em> 
                 <br> 
                  ----------------------------------------------------------------------------------------------------------------------------- 
                 </p> 
                </div> 
               </div> 
              </body> 
             </html> 

驗證器表示: 第3行,第1列:沒有文檔類型聲明;將在沒有驗證的情況下解析(如果我放入此文件,則驗證出現大量錯誤) 第19行第3列:實例中不允許出現「DOCTYPE」聲明 第20行第6列:文檔類型不允許元素「HTML」在這裏

但事情是我沒有使用像fx這樣的任何html標記。在這些文件中,我只是讓php文件爲我生成它。

我的index.php看起來像這樣:

<?php 

include "magic-1.4.php";  
include "background.php"; 

$page = new Page(); 
$title = "Cupcake Lovers"; 
$href = "styles.css"; 
$page->title($title)->css($href); 
$wrapper = html("div")->id("mainWrapper"); 
$content = html("div")->id("allContent"); 

$content->append(file_get_contents("views/nav.php")); 

$section = new HtmlElm("section"); 

$request = new Controller(); 
if($request->has("page")){ 
    $requestedPage = $request->get("page"); 
} 
else{ 
    $requestedPage = 'home'; 
} 

if($requestedPage=="home"){ 
    $content->append(file_get_contents("views/home.php")); 
} 

$wrapper->append($content); 
$page->body($wrapper); 

//convert the page object to HTML and echo it to browser echo 
$page->asHTML(); 

所以我的問題是,什麼我做錯了,因爲PHP產生像3個HTML頁面,然後它驗證真的錯了。

回答

1

<!DOCTYPE html>需要是瀏覽器看到的第一件東西,所以它需要先放在其他所有東西之前。 <div id="mainWrapperbackground">需要進入<body>。在此之後,您需要查看驗證器逐個顯示的錯誤。

+0

繼續前進,其他十幾個錯誤... :-) – 2012-11-20 20:00:14