Ver Mensaje Individual
  #18 (permalink)  
Antiguo 21/03/2009, 20:06
Avatar de jahepi
jahepi
Colaborador
 
Fecha de Ingreso: diciembre-2004
Ubicación: Querétaro
Mensajes: 1.124
Antigüedad: 19 años, 11 meses
Puntos: 43
Respuesta: CheckBox: Busco ejemplo claro de como usarlo con Flash AS3

Cita:
Iniciado por jovix777 Ver Mensaje
Sigo jugando con los CheckBoxs. Tengo otro embrollo, la cantidad de ellos, son 110. Con la funcion "for" que me pasaste jahepi, consigo obtener el label de cada uno, obviamente instancie cada checkbox con cb1, cb2, ... cb110.
Lo que mi mente de diseñador grafico no entiende es como hacer para pasar el resultado de cada cb a una variable que despues se mande al php que termina poniendola en un campo de la base de datos.
Simplificando, tengo dos cb, cb1 dice Agua y cb2 Luz. El resultado de cada uno de ellos es SI o NO, como hago para que se grabe la variable agua_in que sera igual a SI o NO, y la variable luz_in que tambien sera igual a SI o NO???? como es una sola funcion para todos los cb, necesito que cuando se seleccione un cb devuelva una variable con el nombre del cb (agua o luz) para finalmente llenar los campos de la base de datos Agua y Luz con un SI o NO respectivamente... es dificil de explicar, lo se...
Ya se que lo explicaste en tu ejemplo jahepi, pero estoy trabado ahi... un empujoncito hace falta.

Gracias a todos
Hola jovix777 !

En la clase URLVariables se guardan los datos que se van a madar al servidor, así que podemos hacer lo siguiente:

Código actionscript:
Ver original
  1. import flash.net.*;
  2.  
  3. var requestValues:URLVariables = new URLVariables();
  4. requestValues["agua"] = "no";
  5. requestValues["luz"] = "no";
  6.  
  7. cb1.addEventListener(Event.CHANGE, onChange);
  8. cb2.addEventListener(Event.CHANGE, onChange);
  9.  
  10. function onChange(evt:Event):void {
  11.     if(evt.target.selected) {
  12.         requestValues[evt.target.label] = "si";
  13.     } else {
  14.         requestValues[evt.target.label] = "no";
  15.     }
  16. }

Los valores de las etiquetas de los componentes checkbox deben ser iguales a los nombres de atributo en requestValues.

Ahora para mandarlos al servidor:
Código actionscript:
Ver original
  1. sendBtn.addEventListener(MouseEvent.CLICK, onClick);
  2.  
  3. var request:URLRequest = new URLRequest("http://www.misitio.com/receiver.php");
  4. request.method = URLRequestMethod.POST;
  5. request.data = requestValues;
  6. var sender:URLLoader = new URLLoader();
  7. function onClick(evt:MouseEvent):void {
  8.     sender.load(request);
  9. }

Tenemos un botón sendBtn que al darle click manda los datos al servidor.

Y por último el script PHP que recibe los datos:

receiver.php
Código php:
Ver original
  1. $output = "";
  2. foreach($_POST as $key => $value) {
  3.     $output .= $key . "=" . $value . "\r\n";
  4. }
  5.  
  6. $file = fopen("resultado.txt", "w");
  7. fwrite($file, $output, strlen($output));

Se va a crear un archivo de texto en la raiz del servidor con los valores enviados desde Flash.

Un saludote !
__________________
Una contraseña es como la ropa interior. No deberías dejarlas afuera a la vista de otras personas, deberías cambiarla regularmente, y ni se te ocurra prestarla a extraños.