RSS Forums RSS

2 questions involving scripts, select tag, and loading pages

Reply
Posts: 67
Reputation: Diode is on a distinguished road 
Solved Threads: 0
Diode's Avatar
Diode Diode is offline Offline
Junior Poster in Training

2 questions involving scripts, select tag, and loading pages

  #1  
May 30th, 2008
Hi,

I'm making a website for a friend who sells sports memorabilia and I'm using a LAMP setup. I am making a menu that utilizes AJAX. The menu consists of a SELECT tag, we'll call this SELECT1, where the user clicks it, it drops down a list of leagues such as MLB, NCAA, NFL, etc., which are pulled out from a league MySQL table.

After the league is selected, a SELECT2 appears, where the user selects the conference such as National League/American League, NFC/AFC, etc.

When that is chosen, a list of that conference's teams shows up below.

It works great. Except when the page is refreshed. In that case, the page is re-loaded and the league selection stays there, but it doesn't show the conference SELECT2 tag. And then even if I click on it, nothing happens unless I change the selection, because I have the script that takes care of the conference to be executed during the onchange event in SELECT1.

How do I make it so that even if the page is refreshed, it still knows the value in SELECT1? There isn't any onload event that I know of for it; I tried it.

Here is my code so far:
<?php

  include('connect.php');
  include('htmlheader.php');
 
  $menuleagueno = $_SESSION['mleagueno'];
  $menuteamno = $_SESSION['mteamno'];

//
//  echo "<html><body background='bricks2.jpg'>";

  echo "
    <table border=0 cellspacing=0 cellpadding=0>
    <tr>
    <td background='bricks6.jpg' height=700 valign=top font style: color=white>
    <form>
    <font color=white>
    Select a sports league:<br />";
    echo "<select name='league' onload='leagues(this.value)'>";

    echo "
      <option value=0>Select a sports league:
      <option value=0>--------------------------";

  $sql = "select * from leagues";
  $result = mysql_query($sql);

  while($row = mysql_fetch_array($result))
   {
     $leagueno = $row['leagueno'];
     $leaguedesc = $row['leaguedesc'];

     echo "<option value=$leagueno>$leaguedesc";
   }

  echo "  </select></p>
  </font>
        </form>

    <span id='results'></span>
  </td>
  </tr>
  </table> ";

  echo "</body></html>";

//  include('htmlfooter.php');
?>

This file is called menu.php. I include this in the main pages, and position it on the left.

My next question is how do I (without using frames) retain the value of what's in the SELECT tags in menu.php? I tried doing
$menuleagueno = $_GET['leagueno'];
$menuteamno = $_GET['teamno'];

include('menu.php?leagueno=$menuleagueno');

to test to see if this method would work, and it didn't. It gave me a syntax error, and treated the whole line as a filename, it said it couldn't find the file. So without putting menu.php in its own frame, how would I keep the menu intact, going from page to page? Constantly having to go through it and select your team would get very annoying to a user.

I hope I described this in sufficient detail, if not, I apologize in advance, and will do my best to do so if you need further clarification.

Thanks,
Diode
AddThis Social Bookmark Button
Reply With Quote  
Posts: 1,006
Reputation: kkeith29 will become famous soon enough kkeith29 will become famous soon enough 
Solved Threads: 121
kkeith29's Avatar
kkeith29 kkeith29 is online now Online
Veteran Poster

Re: 2 questions involving scripts, select tag, and loading pages

  #2  
May 30th, 2008
I use a session to remember the value. It has worked perfectly for me everytime i have done it that way.
Reply With Quote  
Posts: 67
Reputation: Diode is on a distinguished road 
Solved Threads: 0
Diode's Avatar
Diode Diode is offline Offline
Junior Poster in Training

Re: 2 questions involving scripts, select tag, and loading pages

  #3  
May 31st, 2008
Thanks for your reply, but how do you do it? Do you use If-then-elses and use the onload event for the page to execute the javascript?

Thanks.
Reply With Quote  
Posts: 67
Reputation: Diode is on a distinguished road 
Solved Threads: 0
Diode's Avatar
Diode Diode is offline Offline
Junior Poster in Training

Re: 2 questions involving scripts, select tag, and loading pages

  #4  
May 31st, 2008
I'm pretty new to AJAX. I think I have found that you can't use php functions on events such as onchange. Is this correct? Do you have to use a javascript function to set the session variables in this case? If so, how do you use javascript to set php session variables? This is very confusing to me.

Thanks,
Diode
Reply With Quote  
Posts: 67
Reputation: Diode is on a distinguished road 
Solved Threads: 0
Diode's Avatar
Diode Diode is offline Offline
Junior Poster in Training

Re: 2 questions involving scripts, select tag, and loading pages

  #5  
May 31st, 2008
I wasn't quite sure if this belonged in php since I'm using php as the main scripting language, or if it should go in the AJAX board. If this is off-topic here, please accept my apologies.

Diode
Reply With Quote  
Posts: 1,006
Reputation: kkeith29 will become famous soon enough kkeith29 will become famous soon enough 
Solved Threads: 121
kkeith29's Avatar
kkeith29 kkeith29 is online now Online
Veteran Poster

Re: 2 questions involving scripts, select tag, and loading pages

  #6  
Jun 1st, 2008
you are right that you can't use php functions with onchange events. this is because php is server side, meaning that its processed by the server before being sent to the browser. javascript is client side. what you need to do is get ajax(pretty much javascript) to send info to the php script where the session will be set.
Reply With Quote  
Posts: 67
Reputation: Diode is on a distinguished road 
Solved Threads: 0
Diode's Avatar
Diode Diode is offline Offline
Junior Poster in Training

Re: 2 questions involving scripts, select tag, and loading pages

  #7  
Jun 8th, 2008
I implemented the session variables, but I have found that the only events SELECT tags respond to are onfocus, onblur, and onchange.

I put the javascript function inside an onload event in the body, which did nothing. I can access the session variables, but if the page is loaded, how do I make the elements of the menu appear without the user having to re-enter all the team data?

  leagueno = $mleagueno

  <onload = 'leagues($mleagueno)'>

this function works if it is placed within the onchange event in the select tag, and there is a value in $mleagueno because it is displayed on the page. Any idea what's going on here?

Thanks
Reply With Quote  
Posts: 67
Reputation: Diode is on a distinguished road 
Solved Threads: 0
Diode's Avatar
Diode Diode is offline Offline
Junior Poster in Training

Re: 2 questions involving scripts, select tag, and loading pages

  #8  
Jun 9th, 2008
Wait. I think I might have figured it out. Do I put the javascript function in the onload event in the body tag?
Reply With Quote  
Reply

Only community members can participate in forum threads. You must register or log in to contribute.



Other Threads in the PHP Forum
Views: 1139 | Replies: 7 | Currently Viewing: 1 (0 members and 1 guests)

 

Thread Tools Display Modes
Forums | Blogs | Tutorials | Code Snippets | Whitepapers | RSS Feeds | Advertising
All times are GMT -4. The time now is 12:42 am.
Newsletter Archive - Sitemap - Privacy Statement - Acceptable Use Policy - Contact Us
Forum system based on vBulletin Copyright ©2000 - 2009, Jelsoft Enterprises Ltd.
©2003 - 2008 DaniWeb® LLC