Я использую FB для PHP 4.5, ZendAMF, и я прочитал, что мне не нужно использовать HTTPService для того, что я хочу сделать.
Структура таблицы:
people: {pID, pName}
departments: {deptID, deptName}
people_departments: {pID, deptName}
Iесть немного сложный скрипт flex, People.mxml.В состоянии PersonAdd у меня есть форма, которая будет использоваться для отправки данных на сервер MySQL.В этой форме у меня есть повторитель, который создаст флажок для каждого отдела в моей базе данных.Когда я нажимаю кнопку «Добавить», я хочу вставить данные в таблицы people
и people_departments
.
Код повторителя:
<mx:HBox>
<mx:Repeater id="checkBoxRepeater"
dataProvider="{getDepartmentsResult.lastResult}">
<s:CheckBox id="deptCB"
label="{checkBoxRepeater.currentItem.deptName}"/>
</mx:Repeater>
</mx:HBox>
В моем файле peopleService.php я будуесть функция createPerson(People $item,$deptArray)
, и внутри этой функции я выполню два SQL-запроса.Один запрос будет вставлять данные в таблицу People, а другой - вставлять данные в people_departments с people_departments.pID
= ID вновь вставленного лица.
Как видно из приведенного выше кода Repeater, флажокметка атрибута.Однако когда я отправляю dept_Array (типа ArrayCollection) на сервер, первый должен содержать deptID.Как я могу это сделать?
Вот как я создаю dept_Array в People.mxml для отправки на сервер:
protected function button_clickHandler(event:MouseEvent):void
{
var dept_array:Array=[];
var idx:int;
var getDepts_array:ArrayCollection=new ArrayCollection;
getDepts_array=getDepartmentsResult.lastResult as ArrayCollection;
var len:int=getDepts_array.length;
for (idx=0; idx < len; idx++)
{
if (deptCB[idx].selected)
{
dept_array.push(deptCB[idx].label); //here I need to be able to push the ID of selected department.
}
}
}
[Редактировать] Я использую флажок s: и яне имеют свойства данных.mx: Checkbox работает, но я не могу использовать компонент mx: Checkbox в моем проекте.
Буду признателен за любую помощь.Кроме того, есть ли лучший способ сделать это?