Ver Mensaje Individual
  #5 (permalink)  
Antiguo 19/08/2011, 23:07
Avatar de Triby
Triby
Mod on free time
 
Fecha de Ingreso: agosto-2008
Ubicación: $MX->Gto['León'];
Mensajes: 10.106
Antigüedad: 15 años, 9 meses
Puntos: 2237
Respuesta: mostrar (select) diferente base de datos al pinchar 2 radio button

Basico de HTML:

1. Si vas a usar inputs tipo radio, estos deben tener el mismo nombre, de manera que se envie por $_POST (o $_GET, si es el caso) el valor del que se haya seleccionado.

Código HTML:
Ver original
  1. <input type="radio" name="ejemplo" value="valor1" checked="checked" /> Texto 1
  2. <input type="radio" name="ejemplo" value="valor2" /> Texto 2
  3. ...
  4. <input type="radio" name="ejemplo" value="valorN" /> Texto N
  5. <input type="radio" name="tipo_busqueda" value="otro_valor" checked="checked" /> Otro texto

Si pones otro nombre a un radio, sera tratado ya como un campo diferente. En el ejemplo, tienes 4 radios, pero realmente solo dos campos: "ejemplo" y "tipo_busqueda".

2. Dos o mas campos pueden compartir el mismo nombre, pero ningun elemento (div, input, form, span, a, etc.) debe compartir ID con otros, este atributo debe ser unico.

Código HTML:
Ver original
  1. <input type="radio" name="ejemplo" id="radio1" value="valor1" checked="checked" /> Texto 1
  2. <input type="radio" name="ejemplo" id="radio2" value="valor2" /> Texto 2

Eso es lo correcto.

En cuanto al mensaje de error que obtienes, es porque estas tratando de acceder a una variable que no esta definida, supongo que porque no se ha enviado todavia el formulario. Primero debes ver si existe, con isset(), como lo haces para el campo T1 y entonces tomar el valor.

Dos opciones:
Código PHP:
Ver original
  1. // La normal
  2. if(isset($_POST['variable'])) {
  3.     $variable = $_POST['variable'];
  4. } else {
  5.     $variable = false; // Aqui debes asignar el valor inicial que requieras
  6. }
  7.  
  8. // Con asignacion ternaria (lo mismo, pero mas barato):
  9. $variable = (isset($_POST['variable'])) ? $_POST['variable'] : false;

Finalmente, la consulta que quieres generar en el ELSE de tu IF, posiblemente te vaya a causar problemas, lo conveniente seria que elimines WHERE '$radio', ya que parece que vas a mostrar todo.
__________________
- León, Guanajuato
- GV-Foto