como vocês fazem normalmente uma validação para campos unique no banco?

2008/9/18 Jaison <[EMAIL PROTECTED]>

> Pessoal, alterei o IF da função insereArea para isso:
>
> if (pg_num_rows($resultado)>0) {
>
> $retorno ['dados'][0] = "area_ja_cadastrada";
>
> }else{
>
>
> e agora aparece o Alert do flex quando digito um nome que ja tem no banco,
> porém ao digitar o nome q ainda num tem no banco, ele salva mas retorna null
> quando cai na função retornaAreas(). Porque? alguém poderia me ajudar?
>
>
> abraço...
>
>
>
>
> 2008/9/18 Jaison <[EMAIL PROTECTED]>
>
>
>> pessoal, eu tenho um campo no meu banco de dados (nome_area) que eh
>> unique, queria informar ao usuario que caso ele tente inserir um nome
>> que ja tenha no cadastrado, aparecesse um Alert. porem naum estou
>> conseguindo fazer esse retorno no php, alguem poderia da uma olhada no
>> meu codigo e ver o que ta errado?
>>
>>
>> NO PHP ESTA ASSIM:
>>
>>
>>        function insereArea($nome){
>>                $query = "select * from area where nome_area = '$nome'";
>>                $resultado = pg_query(conecta(),$query);
>>                if (pg_num_rows($resultado)>0) {
>>                        return "area_ja_cadastrada";    // ACHO QUE O
>> PROBLEMA ESTA AQUI,
>> MAS NAUM SEI MAIS OQ FAZER :(
>>                }else{
>>                        $query = "insert into area  (nome_area) values
>> ('$nome')";
>>                        pg_query(conecta(),$query);
>>                        $retorno = new Area();
>>                        return $retorno->retornaAreas();
>>                }
>>        }
>>
>>        function retornaAreas(){
>>                $retorno['dados'] ="";
>>                $i = 0;
>>                $query = "select * from area ORDER BY id_area DESC";
>>                $resultado = pg_query(conecta(),$query);
>>                if(pg_num_rows($resultado)>0){
>>                        while ($linha = pg_fetch_array($resultado)) {
>>                                $retorno['dados'][$i]['id_area] =
>> $linha['id_area'];
>>                                $retorno['dados'][$i]['nome_area'] =
>> utf8_decode($linha['nome_area']);
>>                                $i++;
>>                        }
>>                }
>>                return $retorno;
>>        }
>>
>>
>> NO FLEX, EU TENHO O SEGUINTE:
>>
>>
>> public function resultadoInsereArea(e:ResultEvent):void{
>>        if(e.result.dados == "area_atendimento_ja_cadastrada"){
>>                Alert.show("Ops, essa área já foi cadastrada, tente outro
>> nome");
>>        }else{
>>                listaDeAreas = new ArrayCollection(e.result.dados);
>>        }
>> }
>>
>> >>
>>
>
>
> --
> Jaison.
> msn: [EMAIL PROTECTED] / 48. 84191383
> Site: www.portalandroid.org
>



-- 
Jaison.
msn: [EMAIL PROTECTED] / 48. 84191383
Site: www.portalandroid.org

--~--~---------~--~----~------------~-------~--~----~
Você recebeu esta mensagem porque está inscrito na lista "flexdev"
Para enviar uma mensagem, envie um e-mail para [email protected]
Para sair da lista, envie um email em branco para [EMAIL PROTECTED]
Mais opções estão disponíveis em http://groups.google.com/group/flexdev
-~----------~----~----~----~------~----~------~--~---

Responder a