Difference between revisions of "PHP105 and a half"

From mi-linux
Jump to navigationJump to search
 
(One intermediate revision by the same user not shown)
Line 25: Line 25:
 
<pre><nowiki>&lt;html&gt;&lt;head&gt;&lt;title&gt;Page1&lt;/title&gt;&lt;/head&gt;
 
<pre><nowiki>&lt;html&gt;&lt;head&gt;&lt;title&gt;Page1&lt;/title&gt;&lt;/head&gt;
 
  &lt;body&gt;
 
  &lt;body&gt;
  &lt;? include ("menu.php"); ?&gt;
+
  &lt;?php include ("menu.php"); ?&gt;
 
  &lt;p&gt;this is the content of page 1&lt;/p&gt;
 
  &lt;p&gt;this is the content of page 1&lt;/p&gt;
 
  &lt;/body&gt;
 
  &lt;/body&gt;
Line 32: Line 32:
 
<pre><nowiki>&lt;html&gt;&lt;head&gt;&lt;title&gt;Page2&lt;/title&gt;&lt;/head&gt;
 
<pre><nowiki>&lt;html&gt;&lt;head&gt;&lt;title&gt;Page2&lt;/title&gt;&lt;/head&gt;
 
  &lt;body&gt;
 
  &lt;body&gt;
  &lt;? include ("menu.php"); ?&gt;
+
  &lt;?php include ("menu.php"); ?&gt;
 
  &lt;p&gt;this is the content of page 2&lt;/p&gt;
 
  &lt;p&gt;this is the content of page 2&lt;/p&gt;
 
  &lt;/body&gt;
 
  &lt;/body&gt;
Line 55: Line 55:
 
  &lt;head&gt;
 
  &lt;head&gt;
 
  &lt;title&gt;Dynamic CSS&lt;/title&gt;
 
  &lt;title&gt;Dynamic CSS&lt;/title&gt;
  &lt;?
+
  &lt;?php
  if (isset($_POST["style"]))
+
  if (isset($_POST["style"])) {
{
 
 
  $thisStyle=$_POST["style"];
 
  $thisStyle=$_POST["style"];
  }
+
  } else {
else
 
{
 
 
  $thisStyle="0";
 
  $thisStyle="0";
 
  }
 
  }

Latest revision as of 13:28, 29 June 2016

Main Page >> Web Application Development >> Workbook >> Include

A word about include statements

A useful function in PHP is to include the contents of fileX in fileY at a given point.

For example:

  • You could
    • include a menu file in each page
    • or a CSS file dynamically created from a database
    • or any number of other ideas

Menu Include Example

Create the following file and save it as "menu.php"

<table border=1>
 <tr>
 <td><a href="page1.php">Page 1</a></td>
 <td><a href="page2.php">Page 2</a></td>
 <td><a href="page3.php">Page 3</a></td>
 </tr>
</table>

Now create the following and save it as "page1.php"

<html><head><title>Page1</title></head>
 <body>
 <?php include ("menu.php"); ?>
 <p>this is the content of page 1</p>
 </body>
 </html>


Now create the following and save it as "page2.php"

<html><head><title>Page2</title></head>
 <body>
 <?php include ("menu.php"); ?>
 <p>this is the content of page 2</p>
 </body>
</html>

EXERCISE: See if you can create the third page??

Dynamic CSS?

Create the following 2 cascading style sheets:

save the following as "style0.css"

h1
 { color:green; }

save the following as "style1.css"

h1
 { color:blue; }

save the following as "style2.css"

h1
 { color:red; }

save the following as "page4.php"

<html>
 <head>
 <title>Dynamic CSS</title>
 <?php
 if (isset($_POST["style"])) {
 $thisStyle=$_POST["style"];
 } else {
 $thisStyle="0";
 }
 print "<link rel=\"stylesheet\" href=\"style".$thisStyle.".css\">";
 ?>
 </head>
 <body>
 <h1>What colour is this heading?</h1>
 <form method="post" action="<?= $_SERVER["PHP_SELF"]; ?>">
 <input type="submit" name="style" value="0"><BR>
 <input type="submit" name="style" value="1"><BR>
 <input type="submit" name="style" value="2">
 </form>
 </body>
 </html>

EXERCISE: See if you can create a third stylesheet??

EXERCISE: See if you can change the buttons for radio buttons or a drop down list??

Ready to move on?

PHP106 - Flow Control - Selection