Passing params to PHP served paged in iFrame...

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Dear all,

Not so simple question. Here's what I'm trying to do.

I want to be able to provide a simple script tag pair so that my client's can cut and paste it into their site. This is to try and to make it as simple as posisble for them ;-) The script is then meant to write an iFrame into the document, using the served PHP file for the source. So far, so good. Now for the tricky part.

I want the PHP file to include a pop-up menu which calls a script in the calendar.js file, which in turn reloads (using replace so that the back button doesn't break) the served page, but with an updated parameter - essentially the new year and month to display.

Here are the bare bones of my not-quite-functioning solution. (I'm using Firefox - once I get it working I realise I'll need to tweak how I get the object to do the replace on, and indeed the replace function itself for IE 5 etc...)

The alert is working (so the parameter is being passed), but the reload isn't. What am I doing wrong?

Hope some passing geniuses out there can help/have cracked this one before.

R

**** example client.html file as follows:
--------
<html>
  <head>
    <title>Client</title>
  </head>
  <body>
    <h3>Calendar</h3>
    <script type="text/javascript" src="calendar.js"></script>
  </body>
</html>
-------

**** calendar.js file as follows:
--------
document.write('<iframe id="calendarFrame" src="server.php">');
document.write('</iframe>');

function reloadCalendar(yearMonth) {
  alert(yearMonth);
  var URL = 'server.php?yearmonth=' + yearMonth;
  document.getElementById('calendarFrame').location.replace(URL);
  return false;
}
---------

****server.php file as follows:
---------
<html>
  <head>
    <title>Server</title>
  </head>
  <body>

  <form name="emailForm" id="emailForm" action="server.php">
  <select name="yearmonth" onchange="top.reloadCalendar(this.value);">
    <option value="2006-05">May 2006</option>
    <option value="2006-06">Jun 2006</option>
    <option value="2006-07">Jul 2006</option>
  </select

  <?php $ym = $_REQUEST['yearmonth']; echo "show calendar for $ym"; ?>

  </body>
</html>
---------

--
PHP General Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php


[Index of Archives]     [PHP Home]     [Apache Users]     [PHP on Windows]     [Kernel Newbies]     [PHP Install]     [PHP Classes]     [Pear]     [Postgresql]     [Postgresql PHP]     [PHP on Windows]     [PHP Database Programming]     [PHP SOAP]

  Powered by Linux