Re: How to code in PHP an onchange event in a <select>?
| From: | Jim Lucas | Date: | Fri, 05 Nov 2010 14:58:43 +0000 |
| Subject: | Re: How to code in PHP an onchange event in a <select>? | ||
| References: | 1 | Groups: | php.general |
| Request: | Send a blank email to php-general+get-309334@lists.php.net to get a copy of this message | ||
On 11/4/2010 1:23 PM, Tomás Corrales Lemoine wrote:
> Hi, List,
>
> I have this two files (“index.php” and “include.php”). They both work fine,
> but I want to substitute the code for de onchange event in the <select> tag.
> Can I use PHP to code this event? How?
Looks to me that you are looking for "chained select boxes". Doing a G search
for that and the first result is this:
http://www.dhtmlgoodies.com/index.html?whichScript=ajax_chained_select
It has a very good example that shows the concept that you are trying to have
happen in your code below.
>
> Thanks.
>
> index.php:
> <?php
> echo '<html><body>';
> include_once 'include.php';
> $mysql_link = tcl_MySQL_ConnectToServer('localhost', 'user',
> 'password');
> tcl_MySQL_OpenDataBase($mysql_link, 'production');
> $query = 'SELECT DISTINCT recipe.product_id, product.description FROM
> recipe, product WHERE recipe.product_id = product.product_id ORDER BY
> product.description';
> $result = tcl_MySQL_DataQuery($mysql_link, $query);
> tcl_FillComboBox($result, 'Product', 'product_id', 'description',
> 'alert(\'Alert Message\')');
> tcl_MySQL_CloseConnection($mysql_link);
> echo '</body></html>';
> ?>
>
> include.php:
> <?php
> function tcl_MySQL_CloseConnection($link) {
> mysql_close($link);
> }
> function tcl_MySQL_ConnectToServer($host, $user, $password) {
> $link = mysql_connect($host, $user, $password);
> if (!$link) {
> die('No se pudo conectar: '.mysql_error());
> }
> echo '<h3>User '.strtoupper($user).' connected to MySQL
> server.</h3>';
> return $link;
> }
> function tcl_MySQL_DataQuery($link, $query) {
> return mysql_query($query, $link);
> }
> function tcl_MySQL_OpenDataBase($link, $database) {
> mysql_select_db($database, $link);
> }
> function tcl_FillComboBox($result, $label, $col1, $col2, $onchange) {
> echo '<label>'.$label.'</label><select>
> onchange="'.$onchange.'"><option value="">';
> while ($line = mysql_fetch_array($result, MYSQL_ASSOC)) {
> echo '<option
> value="'.$line[$col1].'">'.$line[$col2];
> }
> echo '</select>';
> }
> ?>
>