Oracle Web Application Programming for PL/SQL Developers

Solutions Specification for top_menu

Description: Load into 'top' frame. Display the heading for the sample application. Below, display 3 hyperlinked menu items:

  1. Students - links to student_frame (PSP)
    TARGET='main'
  2. Instructors - links to instructors_frame (PSP)
    TARGET='main'
  3. Classes - links to classes_frame (PSP)
    TARGET='main'

Sample Screen

In Chapter 15 the top menu was altered to make use of coookies to show the current user. This made the top menu appear as follows:

top_menu

JavaScript Roll overs

Description: In chapter 13 the the top menu was altered to make use of 6 images as JavaScript rollover images. These images will serve as hyperlinks. These are the the six images, (you can download them by clicking on each image and after right clicking choose "save picture as"):


student_off.jpg

instructor_off.jpg

classes_off.jpg

student_on.jpg

instructor_on.jpg

classes_on.jpg

The Final Top menu will look like this:

University Maintenance Website for Cat

If you are not Cat
click here

The PSP to generate the Top Menu will now be as follows:

    <p>      <%@ page language="PL/SQL" %><o:p></o:p> 
      <%@ plsql procedure="top_menu2" %>
      <%
      --------------------------------------------------------
      -- FILENAME: top_menu
      -- FILEDATE: Jan 10, 2003
      -- CREATED BY: Ben Rosenzweig
      -- URL : http://localhost/pls/any/top_menu
      --------------------------------------------------------
      %>     
      <%! v_visitor VARCHAR2(100); %>  
      <% v_visitor := get_cookie('VISITOR'); %>       
      <HTML>  
      <HEAD>  
      <TITLE>University Maintenance Website  
      </TITLE>  
      </HEAD>  
      <BODY BGCOLOR="#99CCFF">  
      <P ALIGN="center">  
      <FONT FACE="Arial" SIZE=5 >University Maintenance Website 
      for <%=v_visitor %>  
      </FONT></P>  
      <TABLE BORDER="0" WIDTH="100%">  
      <TR>  
      <TD ALIGN="center">  
      <A HREF="students_main_frame" TARGET="main"  
      onMouseOver="document.student_button.src='/images/student_on.jpg'"       
      onMouseOut="document.student_button.src='/images/student_off.jpg'">       
      <IMG SRC="/images/Student_off.jpg" BORDER="0"  
      NAME="student_button"></A></TD>  
      <TD ALIGN="center">  
      <A HREF="instruct.instructors_frame" TARGET="main"  
      onMouseOver="document.instructor_button.src='/images/instructor_on.jpg'"       
      onMouseOut="document.instructor_button.src='/images/instructor_off.jpg'">       
      <IMG SRC="/images/instructor_off.jpg" BORDER="0"       
      NAME="instructor_button"></A></TD>  
      <TD ALIGN="center">  
      <A HREF="classes_main_frame" TARGET="main"  
      onMouseOver="document.classes_button.src='/images/classes_on.jpg'"       
      onMouseOut="document.classes_button.src='/images/classes_off.jpg'">      
      <IMG SRC="/images/classes_off.jpg" BORDER="0"  
      NAME="classes_button"></A></TD> <TD>
      <P ALIGN="right">If you are not 
      <%= v_visitor%> 
      click <A HREF="visitor_name" TARGET="_top">here</A></P> </TD> 
      </TR>  
      </TABLE>  
      </BODY>  
      </HTML>

Select a Sample Application Code Unit

  1. main_frame (15.2)
  2. top_menu (13.3) / (15.2)
  3. splash (13.1)
  4. student_main_frame (6.3)
  5. students_left_nav (6.3)
  6. search_student (12.4)
  7. get_student (12.4)
  8. student_list (12.4)
  9. student_personal_info (12.4)
  10. student_zipcode (18.5)
  11. update_student (18.5)
  12. instruct (Package Spec and Body)
    • grade_calc (9.2)
    • v_font (9.4)
    • c_instruct_list (9.4)
    • inst_tbl_type (9.4)
    • instruct_table (9.4)
    • [PL/SQL block to load instruct_table] (9.4)
    • instruct_personal_info (11.3)
    • instructor_list_info (11.3)
    • showzip (11.3)
    • instructors_frame (11.1)
    • instructors_left_nav (11.1)
    • update_instructor (11.2)
    • instructor_list_class (11.3)
    • instruct_classes (11.3)
    • student_list (11.2)
  13. classes_main_frame (6.3)
  14. classes_left_nav (6, Building App)
  15. classes_list (6, Building App)
  16. classes_location (13.4)
  17. classes_location_update (13.4)
  18. set_cookie (15.2)
  19. get_cookie (15.2)
  20. cookie_exists (15.2)
  21. visitor_name (15.2)
  22. process_visitor_name (15.2)
  23. student_list_update (not in book)

Main Solutions Page