Ver Mensaje Individual
  #5 (permalink)  
Antiguo 16/07/2009, 06:15
Avatar de gjx2
gjx2
 
Fecha de Ingreso: agosto-2008
Ubicación: R.D
Mensajes: 1.153
Antigüedad: 15 años, 8 meses
Puntos: 139
Respuesta: pasar una variable en un mismo formulario

Si, se puede pasar dentro del mismo formulario,
De hecho te paso tu codigo modificado y sin error.

Código PHP:
Ver original
  1. <?php include("conectar.php") ?>
  2.  
  3. <script>
  4. function Send(){
  5.  
  6. document.forms[0].submit();
  7. }
  8. </script>
  9.  
  10. <!-- La funcion $_SERVER['PHP_SELF']  ( Aqui aprenderas mas sobre esta ) funcion http://us3.php.net/manual/es/reserved.variables.server.php -->
  11.  
  12. <form name="form1" method="post" action="<?=$_SERVER['PHP_SELF']?>">
  13.    
  14.     <b>Sala:</b>
  15.    
  16.   <select name='salas' style='border:1px solid #f1f1e8; background:#fff; padding:5px;' onChange='Send();'>
  17.   <option value="">--Seleccionar</option>
  18.     <?
  19.    
  20.     $_GET['id_centro'] = 2;
  21.     $id = $_GET['id_centro'];
  22.    
  23.     $sala = "SELECT Nombre_sala, id_sala FROM salas WHERE id_centro='$id'"; ## Solo especificamos el string de la consulta.
  24.     $resultado = mysql_query( $sala ) or die( mysql_error() ); ## Aqui corremos la consulta y en caso de error avisar.
  25.     ## En el select le pusimos que cada vez que cambien onChange , se envie el formulario
  26.    
  27.     //Mostrar los registros en forma de men? desplegable
  28.     while ($row = mysql_fetch_array( $resultado )){
  29.     echo "<option value=$row[id_sala]>$row[Nombre_sala]</option>";
  30.     }
  31.    
  32.     ?>
  33.    
  34.     </select>
  35.  
  36. </form>
  37. <?php
  38.  
  39.     ## Verificamos que hayas posteado desde el select y no desde una recarga de la pagina.
  40.     if( (isset($_POST['salas']) && !empty($_POST['salas'])) ){
  41.     $id_salas = $_POST['salas'];
  42.    
  43.     $sala = "select id_sala from salas where id_sala = '$id_salas'";
  44.     $result = mysql_query($sala) or die(mysql_error());
  45.     $row = mysql_fetch_array($result); 
  46.     $sala_reunion = $row["id_sala"];
  47.     echo "Resultado Final : <input type=\"text\" name=\"id_sala\" value=\"$sala_reunion\">";
  48.    
  49.     }
  50.     ?>

Para la prueba utilice la siguiente estructura de datos

Código:
CREATE TABLE  `prueba`.`salas` (
  `Codigo` int(10) unsigned NOT NULL auto_increment,
  `Id_sala` tinyint(3) unsigned NOT NULL default '0',
  `Nombre_Sala` varchar(30) NOT NULL default '',
  `Id_centro` tinyint(3) unsigned NOT NULL default '0',
  PRIMARY KEY  (`Codigo`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1;