Как сравнить текстовый ответ из HTTPrequest с другим текстом в flex 3 для условного выражения?

Я строю форму в Flex Builder 3, которая должна POST в документ php через HTTPrequest и вернуться с текстовым ответом. С помощью Alert.show() Я подтвердил, что HTTPrequest отправляет отправленные данные, и ответ возвращается правильно. Я пытаюсь использовать ответ в условном выражении для того, чтобы выполнить следующий набор операций.

<![CDATA[

import mx.rpc.events.ResultEvent;
import mx.controls.Alert;

public var resCreate:String = new String;

private function returnCreate(event:ResultEvent):void{
resCreate = String(event.result);       
resultCreation();       
}

private function resultCreation():void{
Alert.show(resCreate);
if (resCreate == "Y"){
    currentState = "LogIn";
}
    else {      
    Alert.show("User already exists.");
    currentState = "NewEmployee";
    }
}

]]>

</mx:Script>

<mx:HTTPService 
        id="createSend" 
        url="create.php" 
        useProxy="false" 
        method="POST" 
        resultFormat="text" 
        result ="returnCreate(event)">
    <mx:request xmlns="">
        <username>{textinput9.text}</username>      
        <password>{textinput13.text}</password>    
    </mx:request>
</mx:HTTPService>

у меня есть Alert.show() чтобы увидеть, что находится в моей переменной. Это ответ от HTTPrequestи он говорит "Y", когда новый пользователь создан, или "N", когда пользователь уже существует в базе данных. Это работает правильно. В первый раз, когда я создаю нового пользователя, я получаю "Y", а когда я пытаюсь создать этого пользователя снова, я получаю "N". Я также сделал это:

 Alert.show(String(resCreate == "Y"));

и я получил логическое значение true или же false в зависимости от того, был ли ответ "Y" или же "N"Это то, как я знаю, что мой скрипт распознает ответ, но он просто отказывается сделать это в условном выражении. Когда я пытаюсь использовать его в условном выражении, только код внутри" else "срабатывает, как если бы resCreate никогда не распознается как "Y". Оповещение опровергает это, и когда я проверяю свою базу данных, новый пользователь был успешно создан. Что я делаю неправильно? Я получил такой же тип работы для других приложений, которые я написал, но не в этом.

0 ответов

Другие вопросы по тегам