• Status: Solved
  • Priority: Medium
  • Security: Public
  • Views: 426
  • Last Modified:

Converting my frames page to div format

I have the following php page with frames:

 
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Frameset//EN"
   "http://www.w3.org/TR/html4/frameset.dtd">
<HTML>
<HEAD>

</HEAD>
<FRAMESET cols="10%, 90%">
  <FRAMESET rows="10%, "90%">
      <FRAME name="status" id="status" src="status.php" scrolling="no" noresize="noresize" frameborder="0">
      <FRAME  name="menu" id="menu" src="menu.php"  scrolling="no" noresize="noresize" frameborder="0">
  </FRAMESET>
  <FRAMESET rows="20%, "80%">
      <FRAME name="logo" id="logo" src="logo.php"  scrolling="no" noresize="noresize" frameborder="0">
      <FRAME  name="main" id="main" src="login.php"  scrolling="yes" noresize="noresize" frameborder="0">
  </FRAMESET>
  <NOFRAMES>
      Sorry, your browser does not handle frames!
  </NOFRAMES>
</FRAMESET>
</HTML>

Open in new window



I have been advised that changing to css is more up to date, so I created the following instead:

<?php
session_start();
?>
<HTML>
<HEAD>
<style>
        .top {
                position:relative;
                height:10%;
                width:90%;
                border: none;
                overflow-y:hidden;
                overflow-x:hidden
        }
        .header {
                position:relative;
                height:100%;
                width:70%;
                border: none;
                overflow-y:hidden;
                overflow-x:hidden
        }

        .status {
                position:relative;
                height:100%;
                width:30%;
                border: none;
                overflow-y:hidden;
                overflow-x:hidden
        }
        .bottom {
                position:relative;
                height:90%;
                width:100%;
                border: none;
                overflow-y:hidden;
                overflow-x:hidden
        }
        .menu {
                position:relative;
                height:100%;
                width:20%;
                border: none;
                overflow-y:hidden;
                overflow-x:hidden
        }
        .main {
                position:relative;
                height:100%;
                width:80%;
                border: none;
                overflow-y:hidden;
                overflow-x:hidden
        }

</style>
</HEAD>
<BODY>
<div class="top" name="top" id="top">
 <div class="status" name="status" id="status">
   <?php include("status.php"); ?>
 </div>
 <div class="header" name="header" id="header">
   <?php include("header.php"); ?>
 </div>
</div>
<div class="bottom" name="bottom" id="bottom">
 <div class="menu" name="menu" id="menu">
   <?php include("menu.php"); ?>
 </div>
 <div class="main" name="main" id="main">
   <?php include("login.php"); ?>
 </div>
</div>
</BODY>
</HTML>

Open in new window


And here are the php pages I am trying to display:
Header.php:

<?php
if(!isset($_SESSION)){
    session_start();
}
?>
    <head>
        <link rel="stylesheet" href="css/jquery.ui.all.css">
        <link rel="stylesheet" href="css/ribbon.css">
        <link rel="stylesheet" href="css/demos.css">
        <style>
           #toolbar {
                        padding: 4px;
                        background: #CEF6F5;
                        display: inline-block;
                }
                /* support: IE7 */
            *+html #toolbar {
                        display: inline;
                }
            .ui-menu {
                      width: 150px;
                      background: #FAFAFA;
                     }
        </style>
        <meta charset="utf-8">
                <script src="js/jquery-1.10.1.min.js"></script>
                <script src="js/jquery-ui-1.10.3.custom.min.js"></script>
                <script>
                 $(function() {
                        var $logout = $("#logout").button({ text: false, icons: { primary: "ui-icon-key" } });
                        var $settings = $("#settings").button({ text: false, icons: { primary: "ui-icon-gear", secondary: "ui-icon-triangle-1-s" } });
                        var $menu = $("#settings").parent().next().show();

                $(document).click(function() {
                        $menu.hide();
                $settings.removeClass("active");
                });

                $settings.click(function(evt) {
                        evt.stopImmediatePropagation();
                        $(this).toggleClass("active")
                        $menu.css("display", $(this).hasClass("active")?"block":"none");
                        $menu.position({ my: "left top", at: "left bottom", of: this });
                        });

                $settings.parent().buttonset().next().hide().menu();

                $menu.hover(function() {
                $(this).addClass("overme");
                }, function() {
                        if($(this).hasClass("overme")) {
                                $(this).hide();
                                $(this).removeClass("overme");
                                $settings.removeClass("active");
                                }
                        });

                $menu.click(function(evt) {
                        alert($(evt.target).text());
                        });
                $("#toolbar").hide();
                });
                </script>



 </head>
 <body bgcolor="white">
<div id="header">
<div class="ribbon"><div class="ribbon-stitches-top"></div>
<strong class="ribbon-content"><img src="../images/hassans.gif" alt="Hassans" width="150" height="75"></strong>
<div class="ribbon-stitches-bottom"></div></div>
<div id="menu"  style="text-align: right">
<div id="toolbar" class="ui-widget-header ui-corner-all">
<button id="logout">Logout</button>
<button id="settings">Settings</button>
</div>
  <ul id="menu" >
    <li><a href="#">Open...</a></li>
    <li><a href="#">Save</a></li>
    <li><a href="#">Delete</a></li>
  </ul>
</div>
</div>
 </body>

Open in new window


And here is my menu.php:
<?php
if(!isset($_SESSION)){
    session_start();
}
?>
<html>
    <head>
    </head>
<body bgcolor="white">
</body>
</html>

Open in new window


And here my status.php:

<?php
if(!isset($_SESSION)){
    session_start();
}
?>
<html>
    <head>
    </head>
<body bgcolor="white">
</body>
</html>

Open in new window


And here is my login.php
<?php
if(!isset($_SESSION)){
    session_start();
}
?>
<!doctype html>

<head>

        <!-- Basics -->

        <meta charset="utf-8">
        <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">

        <title>Login</title>

        <!-- CSS -->

        <link rel="stylesheet" href="css/reset.css">
        <link rel="stylesheet" href="css/animate.css">
        <link rel="stylesheet" href="css/styles.css">

</head>

        <!-- Main HTML -->

<body>

        <!-- Begin Page Content -->

        <div id="container">

                <form autocomplete="off" action="check_login.php" method="POST">

                <label for="name">Username:</label>

                <input type="name" name="username" onclick="this.value=''" />

                <label for="username">Password:</label>

                <p><a href="#">Forgot your password?</a>

                <input type="password" name="password" onclick="this.value=''" />

                <img id="siimage" style="border: 1px solid #000; margin-right: 15px" src="securimage/securimage_show.php?sid=<?php echo md5(uniqid()) ?>" alt="CAPTCHA Image" align="center" onclick="this.blur()" />

                <object type="application/x-shockwave-flash" data="securimage/securimage_play.swf?bgcol=#ffffff&amp;icon_file=securimage/images/audio_icon.png&amp;audio_file=securimage/securimage_play.php" width="20" height="20">
                <param name="movie" value="securimage/securimage_play.swf?bgcol=#ffffff&amp;icon_file=securimage/images/audio_icon.png&amp;audio_file=securimage/securimage_play.php" />
                </object>


                <a id="refresh" href="#" title="Refresh Image" onclick="document.getElementById('siimage').src = 'securimage/securimage_show.php?sid=' + Math.random(); this.blur(); return false">

                <img src="images/refresh.png" alt="Reload Image" height="20" width="20" onclick="this.blur()" align="bottom" border="0" />

                </a>

                <input type="captcha" name="captcha_code" onclick="this.value=''" placeholder="Enter Code" />

                <div id="lower">

                <input type="checkbox" name="keepMe" value="true" ><label class="check" for="checkbox">Keep me logged in</label>

                <input type="submit" value="Login">

                </div>

                </form>

        </div>

        <!-- End Page Content -->
<script src="js/jquery-1.10.1.min.js"></script>
<script type="text/javascript">
    $.noConflict();

    function reloadCaptcha()
    {
        jQuery('#siimage').src = 'securimage/securimage_show.php?sid=' + Math.random();
    }

</script>


</body>

Open in new window


For some reason the heade.php is never displayed, can someone tell me what I am doing wrong (I am pretty sure I am doing a lot worng) :-(
0
Ashraf Hassanein
Asked:
Ashraf Hassanein
  • 2
  • 2
1 Solution
 
GaryCommented:
You should only have one head, body tag etc in the page - you currently have them multiple times because all your include files have a full page structure.
So move all your style, script and meta tags to the parent page (the one where you are including the other files)
For the included files remove everything except the content inside the body tags. e.g. your login page should just be

        <div id="container">

                <form autocomplete="off" action="check_login.php" method="POST">

                <label for="name">Username:</label>

                <input type="name" name="username" onclick="this.value=''" />

                <label for="username">Password:</label>

                <p><a href="#">Forgot your password?</a>

                <input type="password" name="password" onclick="this.value=''" />

                <img id="siimage" style="border: 1px solid #000; margin-right: 15px" src="securimage/securimage_show.php?sid=<?php echo md5(uniqid()) ?>" alt="CAPTCHA Image" align="center" onclick="this.blur()" />

                <object type="application/x-shockwave-flash" data="securimage/securimage_play.swf?bgcol=#ffffff&amp;icon_file=securimage/images/audio_icon.png&amp;audio_file=securimage/securimage_play.php" width="20" height="20">
                <param name="movie" value="securimage/securimage_play.swf?bgcol=#ffffff&amp;icon_file=securimage/images/audio_icon.png&amp;audio_file=securimage/securimage_play.php" />
                </object>


                <a id="refresh" href="#" title="Refresh Image" onclick="document.getElementById('siimage').src = 'securimage/securimage_show.php?sid=' + Math.random(); this.blur(); return false">

                <img src="images/refresh.png" alt="Reload Image" height="20" width="20" onclick="this.blur()" align="bottom" border="0" />

                </a>

                <input type="captcha" name="captcha_code" onclick="this.value=''" placeholder="Enter Code" />

                <div id="lower">

                <input type="checkbox" name="keepMe" value="true" ><label class="check" for="checkbox">Keep me logged in</label>

                <input type="submit" value="Login">

                </div>

                </form>

        </div>
<script type="text/javascript">
    $.noConflict();

    function reloadCaptcha()
    {
        jQuery('#siimage').src = 'securimage/securimage_show.php?sid=' + Math.random();
    }

</script>

Open in new window

0
 
Ashraf HassaneinAuthor Commented:
But how to include additional CSS file for only login.php?
0
 
GaryCommented:
The general logic of web design is that you have all your css in one file that is included in every page, ditto for your javascript.
You don't have bits of css scattered around different pages
0
 
Ashraf HassaneinAuthor Commented:
Hi Gary thank you so much for your support
0

Featured Post

Upgrade your Question Security!

Add Premium security features to your question to ensure its privacy or anonymity. Learn more about your ability to control Question Security today.

  • 2
  • 2
Tackle projects and never again get stuck behind a technical roadblock.
Join Now