How do I get all the results from a select multiple HTML tag?
<<<
How can I pass a variable from Javascript to PHP? FAQ : Foire Aux Questions
>>>

10.8 PHP and HTML
10 FAQ : Foire Aux Questions
 Manuel PHP

What encoding/decoding do I need when I pass a value through a form/URL?
I'm trying to use an <input type="image"> tag, but the
How do I create arrays in a HTML <form>?
How do I get all the results from a select multiple HTML tag?
-> How can I pass a variable from Javascript to PHP?

10.8.5 How can I pass a variable from Javascript to PHP?

Since Javascript is (usually) a client-side technology, and PHP is (usually) a server-side technology, and since HTTP is a "stateless" protocol, the two languages cannot directly share variables.

It is, however, possible to pass variables between the two. One way of accomplishing this is to generate Javascript code with PHP, and have the browser refresh itself, passing specific variables back to the PHP script. The example below shows precisely how to do this -- it allows PHP code to capture screen height and width, something that is normally only possible on the client side.


<?php
if (isset($_GET['width']) AND isset($_GET['height'])) {
  
// output the geometry variables
  
echo "Screen width is: ". $_GET['width'] ."<br />\n";
  echo
"Screen height is: ". $_GET['height'] ."<br />\n";
} else {
  
// pass the geometry variables
  // (preserve the original query string
  //   -- post variables will need to handled differently)

  
echo "<script language='javascript'>\n";
  echo
"  location.href=\"${_SERVER['SCRIPT_NAME']}?${_SERVER['QUERY_STRING']}"
            
. "&width=\" + screen.width + \"&height=\" + screen.height;\n";
  echo
"</script>\n";
  exit();
}
?>

<< How can I pass a variable from Javascript to PHP? >>
How do I get all the results from a select multiple HTML tag? PHP and HTML FAQ : Foire Aux Questions