php包括整个php页面

时间:2013-03-20 16:51:56

标签: php html include

我有使用php include的页面。主页分为表格。左边的单元格是带有菜单的嵌套表格,右边的单元格是包含页面。我包括整个php页面,开始标记和结束标记。但我现在发现,当包含页面没有内容标题,标签正文等时是正确的,因为结果页面有两个标题,两个标记正文等。我的方法是来自框架的不合时宜。但我的网页工作正确。当我想要更改插入页面 - 删除标题,标签正文,标签html - 出现问题。我的主页面中的菜单丢失了css格式。网络几乎是完整的,我很懒,修复这个。通过框架技术包括整页是致命的错误吗?为什么?

2 个答案:

答案 0 :(得分:1)

拥有多个<head>和/或多个<body>代码不是有效的HTML,您不应该这样做。

浏览器在解析无效HTML时会被设计为宽容,但不同浏览器或浏览器版本的行为不是标准化的。换句话说,无效页面可能与浏览器如何处理HTML中存在的错误有一些愉快的巧合,但您无法保证您的页面将正确显示。

我猜你丢失一些CSS样式的原因是因为浏览器选择删除一个额外的<head>块以应对无效的HTML,并<head>阻止包括指向样式表的链接。

答案 1 :(得分:0)

好的,这是代码。 主页是:

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
  <head>
    <title></title>
    <meta http-equiv="Content-type" content="text/html; charset=utf-8">
    <meta name="Content-language" content="cs" />
    <link rel="sheet" type="text/css" href="styly.css">
    <script language="JavaScript" type="text/javascript">
        function winH(){
             if (window.innerHeight)
                //NN4 a kompatibilní prohlížeče 
                return window.innerHeight;
             else if
             (document.documentElement &&
             document.documentElement.clientHeight)
                //MSIE6 v std. režimu - Opera a Mozilla
                //již uspěly s window.innerHeight 
                return document.documentElement.clientHeight;
             else if
             (document.body && document.body.clientHeight)
                //starší MSIE + MSIE6 v quirk režimu
                return document.body.clientHeight;
             else
            return null;
        }
        function odsazeniBackTop(){
            if(winH()<750){
              return 0;  
            }
            if(winH()>750 && winH()<850){
              return 100;  
            }
            if(winH()>850){
              return 150;  
            }
            return 0;
        }  
            function zmena1(){
                var url="http://ryska.webzdarma.cz/index2.php?page=";
                var td1 = document.getElementById("bunka1");
                td1.innerHTML="<b><a href="+url+"hlavniStrana class='odkazOut' onMouseOver='this.className=\"odkazOver\"' onMouseOut='this.className=\"odkazOut\"'>Hlavní stránka</a></b>";
                var td2 = document.getElementById("bunka2");
                td2.innerHTML="<b><a href="+url+"oznameniUvod class='odkazOut' onMouseOver='this.className=\"odkazOver\"' onMouseOut='this.className=\"odkazOut\"'>Svatební oznámení</a></b>";
                var td3 = document.getElementById("bunka3");
                td3.innerHTML="<b><a href="+url+"galerie class='odkazOut' onMouseOver='this.className=\"odkazOver\"' onMouseOut='this.className=\"odkazOut\"'>Galerie</a></b>";
                var td4 = document.getElementById("bunka4");
                td4.innerHTML="<b><a href="+url+"kontakt class='odkazOut' onMouseOver='this.className=\"odkazOver\"' onMouseOut='this.className=\"odkazOut\"'>Kontakt</a></b>";
            }
            function zmena2(){
                var url="http://ryska.webzdarma.cz/index2.php?page=";
                var td1 = document.getElementById("bunka1");
                td1.innerHTML="<b><a href="+url+"hlavniStrana class='odkazOut' onMouseOver='this.className=\"odkazOver\"' onMouseOut='this.className=\"odkazOut\"'>Hlavní stránka</a></b>";
                var td2 = document.getElementById("bunka2");
                td2.innerHTML="<b><a href="+url+"oznameniUvod  class='odkazOut' onMouseOver='this.className=\"odkazOver\"' onMouseOut='this.className=\"odkazOut\"'>Svatební oznámení</a><br>&nbsp&nbsp<a href="+url+"oznameniUvod class='odkazOut2' onMouseOver='this.className=\"odkazOver2\"' onMouseOut='this.className=\"odkazOut2\"'>Úvod</a><br>&nbsp&nbsp<a href="+url+"oznameniPrani class='odkazOut2' onMouseOver='this.className=\"odkazOver2\"' onMouseOut='this.className=\"odkazOut2\"'>Oznámení na zakázku</a><br>&nbsp&nbsp<a href="+url+"oznameniKatalog class='odkazOut2' onMouseOver='this.className=\"odkazOver2\"' onMouseOut='this.className=\"odkazOut2\"'>Katalogová oznámení</a></b>";
                var td3 = document.getElementById("bunka3");
                td3.innerHTML="<b><a href="+url+"galerie class='odkazOut' onMouseOver='this.className=\"odkazOver\"' onMouseOut='this.className=\"odkazOut\"'>Galerie</a></b>";
                var td4 = document.getElementById("bunka4");
                td4.innerHTML="<b><a href="+url+"kontakt class='odkazOut' onMouseOver='this.className=\"odkazOver\"' onMouseOut='this.className=\"odkazOut\"'>Kontakt</a></b>";
            }
            function zmena3(){
                var url="http://ryska.webzdarma.cz/index2.php?page=";
                var td1 = document.getElementById("bunka1");
                td1.innerHTML="<b><a href="+url+"hlavniStrana class='odkazOut' onMouseOver='this.className=\"odkazOver\"' onMouseOut='this.className=\"odkazOut\"'>Hlavní stránka</a></b>";
                var td2 = document.getElementById("bunka2");
                td2.innerHTML="<b><a href="+url+"oznameniUvod class='odkazOut' onMouseOver='this.className=\"odkazOver\"' onMouseOut='this.className=\"odkazOut\"'>Svatební oznámení</a></b>";
                var td3 = document.getElementById("bunka3");
                td3.innerHTML="<b><a href="+url+"galerie  class='odkazOut' onMouseOver='this.className=\"odkazOver\"' onMouseOut='this.className=\"odkazOut\"'>Galerie</a><br>&nbsp&nbsp<a href="+url+"galerieFoto&typ=zelene class='odkazOut2' onMouseOver='this.className=\"odkazOver2\"' onMouseOut='this.className=\"odkazOut2\"'>Zelené odstíny</a><br>&nbsp&nbsp<a href="+url+"galerieFoto&typ=kremove class='odkazOut2' onMouseOver='this.className=\"odkazOver2\"' onMouseOut='this.className=\"odkazOut2\"'>Krémové odstíny</a></b>";
                var td4 = document.getElementById("bunka4");
                td4.innerHTML="<b><a href="+url+"kontakt class='odkazOut' onMouseOver='this.className=\"odkazOver\"' onMouseOut='this.className=\"odkazOut\"'>Kontakt</a></b>";
            }
            function nacteniStranky(){
              adresa = location.href;
              subAdr1=adresa.substring(42,55);
              subAdr2=adresa.substring(42,52);
              if(adresa.localeCompare("http://ryska.webzdarma.cz/index2.php?page=oznameniUvod")==0
                  || adresa.localeCompare("http://ryska.webzdarma.cz/index2.php?page=oznameniPrani")==0
                  || adresa.localeCompare("http://ryska.webzdarma.cz/index2.php?page=oznameniKatalog")==0
                  || adresa.localeCompare("http://ryska.webzdarma.cz/index2.php?page=obchodniPodminky")==0
                  || adresa.localeCompare("http://ryska.webzdarma.cz/index2.php?page=praniFormular")==0
                  || adresa.localeCompare("http://ryska.webzdarma.cz/index2.php?page=katalogFormular")==0
                  || adresa.localeCompare("http://ryska.webzdarma.cz/index2.php?page=praniFormular1")==0
                  || adresa.localeCompare("http://ryska.webzdarma.cz/index2.php?page=praniFormular2")==0
                  || adresa.localeCompare("http://ryska.webzdarma.cz/index2.php?page=praniFormular3")==0
                  || adresa.localeCompare("http://ryska.webzdarma.cz/index2.php?page=paleta")==0
                  || adresa.localeCompare("http://ryska.webzdarma.cz/index2.php?page=doplnky")==0
                  || adresa.localeCompare("http://ryska.webzdarma.cz/index2.php?page=nevhodneFotky")==0
                  || subAdr1.localeCompare("katalogovaBig")==0)
              {
                  zmena2();  
              }else if(adresa.localeCompare("http://ryska.webzdarma.cz/index2.php?page=galerie")==0
                  || adresa.localeCompare("http://ryska.webzdarma.cz/index2.php?page=galerieFoto&typ=zelene")==0
                  || adresa.localeCompare("http://ryska.webzdarma.cz/index2.php?page=galerieFoto&typ=kremove")==0
                  || subAdr2.localeCompare("galerieBig")==0)
              {

                  zmena3();
              }
              else{

                  zmena1();
              }
              var tabulka = document.getElementById("tabulka");
              tabulka.style.position="relative";
              tabulka.style.top=odsazeniBackTop();
            }
        </script>
  </head>
    <body onload="nacteniStranky()" style="background-color: #d1ae6e">
      <table  id="tabulka" background="background.jpg" width="1250" height="670"
        align="center" >
      <tr>
        <td width="70">

        </td>
        <td width="320">
        <?php
          $filename='hlavni.php'; // výchozí stránka 
        if (!empty($_GET['app'])) // je požadována nějaká aplikace/skript? 
        { 
          if (File_Exists ($_GET['app'].'.php')) 
          { // pokud existuje požadovaný skript ve složce Controls, nastavit vkládaný soubor na jméno skriptu 
            $filename=$_GET['app'].'.php'; 
          } 
        } 
        elseif (!empty($_GET['page'])) // nebo je požadována nějaká stránka? 
        { 
          if (File_Exists($_GET['page'].'.php')) 
          { // pokud existuje požadovaná stránka ve složce Pages, nastavit vkládaný soubor na jméno stránky 
            $filename=$_GET['page'].'.php'; 
          } 
        } 

        ?>

        <table style="font-family: 'Kristen ITC';font-size: 25px">
            <tr style="height: 40px">
                <td id="bunka1" onclick="zmena1()" onMouseOver="this.className='pozadiInsert'"
                    onMouseOut="this.className='pozadi'">

                </td>
            </tr>
            <tr style="height: 40px">
                <td id="bunka2" onclick="zmena2()"onMouseOver="this.className='pozadiInsert'"
                    onMouseOut="this.className='pozadi'" >

                </td>
            </tr>
            <tr style="height: 40px">
                <td id="bunka3" onclick="zmena3()" onMouseOver="this.className='pozadiInsert'"
                    onMouseOut="this.className='pozadi'" >

                </td>
            </tr>
            <tr style="height: 40px">
                <td id="bunka4" onclick="zmena1()" onMouseOver="this.className='pozadiInsert'"
                    onMouseOut="this.className='pozadi'">

                </td>
            </tr>
        </table>
        </td>
        <td>                                 


         <?php
          include($filename);
          ?>

        </td>
      </tr>
      </table> 
   </body>
</html>

当我将f.e包括在内时:

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
  <head>
  <meta name="generator" content="PSPad editor, www.pspad.com">
  <meta http-equiv="Content-type" content="text/html; charset=utf-8">
  <meta name="Content-language" content="cs" />
  <link rel="stylesheet" type="text/css" href="styly.css">
  <title></title>
  </head>
  <body>
    <div class="includePage" style="font-size: 25px">
      grafika.mail@seznam.cz
      <br>
      <br>
      +420773395498
    </div>
</body>
</html>
一切都是对的。但是当我把这个包括在内时:

<?php
    echo '<div class="includePage" style="font-size: 25px">
            grafika.mail@seznam.cz
            <br>
            +420755595498
          </div>';
?>

出现问题,主页面中的菜单没有格式化。顺便说一句,我的javascript菜单不是最好的解决方案,我知道。