Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

anapm

Array + FLASH

Recommended Posts

Olá pessoal sou nova aqui no fórum.....

 

eu estou com um problema em flash tenho que enviar uma variavel por array só que não sei como faz.... tenho este código:

 

function grava_nr_vaga(){

//busca numero da vaga

gate2 = new LoadVars();

gate2.sqlcomando = 136;

gate2.var001 = nr_requisicao.text;

gate2.sendAndLoad("gatesql.php",gate2,"POST");

gate2.onLoad = retorna_nr_vaga;

}

 

//ESTA FUNCAO QUE ESTA COM ERRO POIS ELA NAO RETORNA O NUMERO DA VAGA... ELA MOSTRA O ARRAY COMO UNDEFINED

function retorna_nr_vaga(){ // AQUI O ERRO

numero_da_vaga = new Array();

var i = 0;

while(i<qt_vagas.text){

numero_da_vaga.addItem({vaga:gate2["NR_VAGA"+i]});

i++;

}

insere_situacoes();

}

 

function insere_situacoes(){

var i = 0;

while(i<qt_vagas.text){

//insere em sip_situacoes_vaga

gate3 = new LoadVars();

gate3.sqlcomando = 137;

gate3.var001 = numero_da_vaga.vaga;

gate3.var002 = _level0.cd_empresa.text;

gate3.var003 = cd_usuario.text;

gate3.sendAndLoad("gatesql.php",gate3,"POST");

j=1;

//insere em sip_estagios_vagas

while(j<=2){

gate4 = new LoadVars();

gate4.sqlcomando = 138;

gate4.var001 = numero_da_vaga.vaga;

gate4.var002 = j;

gate4.var003 = cd_usuario.text;

gate4.sendAndLoad("gatesql.php",gate4,"POST");

j++;

}

i++;

}

 

//update em id_internet para 'N'

gate5 = new LoadVars();

gate5.sqlcomando = 139;

gate5.var001 = nr_requisicao.text;

gate5.sendAndLoad("gatesql.php",gate5,"POST");

gate5.onLoad = mensagem_final;

}

 

 

SE ALGUEM SOUBER COMO ARRUMAR AQUELA FUNÇÃO FICARIA MTO GRATA http://forum.imasters.com.br/public/style_emoticons/default/natal_biggrin.gif

Compartilhar este post


Link para o post
Compartilhar em outros sites

eu troquei pelo push() mas mesmo assim continua dando erro de variavel UNDEFINED...=(

 

se tiver outra sugestao =D

Compartilhar este post


Link para o post
Compartilhar em outros sites

OUTRA DUVIDA *-)

 

eu gostaria de imprimir na tela o valor desta variavel para ver se esta jogando o valor e tals.....

 

eu estou fazendo assim eh o metodo certo??

 

criei um dynamic text e coloquei o nome da Var:erro

 

function retorna_nr_vaga(){ // AQUI O ERRO

numero_da_vaga = new Array();

var i = 0;

while(i<qt_vagas.text){

numero_da_vaga.push({vaga:gate2["NR_VAGA"+i]});

i++;

}

erro = "vaga2:" + numero_da_vaga;

insere_situacoes();

}

 

=D

 

affe q coisinha mais complicadinha =(

Compartilhar este post


Link para o post
Compartilhar em outros sites

EU COLOQUEI:

 

_root.erro = "vaga2:" + numero_da_vaga;

 

e imprimiu no campo erro:

 

vaga2:[object Object]

 

=S

Compartilhar este post


Link para o post
Compartilhar em outros sites

VOU PUBLICAR DE NOVO O CODIGO QUE É ONDE QUE ESTA DANDO ERRO.... SO EXPLICANDO DA ONDE Q VEM O NR_VAGA....

ele faz um select no BD e retorna o NR_VAGA eu testo no BD funciona certinho .... pra mim o codigo ta correto mas nao sei oq tem q nao funciona =(

 

function grava_nr_vaga(){

//busca nurmero da vaga

gate2 = new LoadVars();

gate2.sqlcomando = 136; // CAPTURA O NR_VAGA DO BD (select NR_VAGA from sip_vagas where nr_requisicao = $var001 order by nr_vaga desc)

gate2.var001 = nr_requisicao.text;

gate2.sendAndLoad("gatesql.php",gate2,"POST");

gate2.onLoad = retorna_nr_vaga;

}

function retorna_nr_vaga(){

numero_da_vaga = new Array();

var i = 0;

while(i<qt_vagas.text){

numero_da_vaga.push({vaga:gate2["NR_VAGA"+i]});

_root.erro = "vaga:" + numero_da_vaga.toString();

i++;

}

insere_situacoes();

}

Compartilhar este post


Link para o post
Compartilhar em outros sites

faça esses dois testes:

 

testa quantos elemento tem no array, depois do laço

 

ACTIONSCRIPT
while(i<qt_vagas.text){

numero_da_vaga.push({vaga:gate2["NR_VAGA"+i]});

i++;

}

_root.erro = "N vaga:" + numero_da_vaga.length;

 

 

para ver o conteúdo do array

 

 

ACTIONSCRIPT
while(i<qt_vagas.text){

numero_da_vaga.push(gate2["NR_VAGA"+i]);

i++;

}

_root.erro = "vagas:" + numero_da_vaga.toString();;

 

 

 

[]´s

Compartilhar este post


Link para o post
Compartilhar em outros sites

para o primeiro teste: ele retorna certo o numero de vagas: depende qtas vagas se digita mas esta correta...

 

_root.erro = "N vaga:" + numero_da_vaga.length;[/actionscript]

 

E PARA O SEGUNDO TESTE ELE MOSTRA: undefined, undefined

 

while(i<qt_vagas.text){

numero_da_vaga.push(gate2["NR_VAGA"+i]);

i++;

}

_root.erro = "vagas:" + numero_da_vaga.toString();

 

 

=S

Compartilhar este post


Link para o post
Compartilhar em outros sites

ESTE É O ARQUIVO gatesql.php

 

PHP
$comando = 'select ds_sql,id_comando,nr_sequencia from ewp_comandos_sql where pk_comandos_sql='.$_REQUEST['sqlcomando'].' order by nr_sequencia';

 

    //---------- busca o comando sql solicidato ---------//

    $c = $conexao->Prepare($comando);

    $cursor_comandos  = $conexao->Execute($c);

    $fd = fopen("gatesql.txt","w");

 

    fwrite($fd,"-----------------------------busca comando---------v1.2-----------"."n");

    fwrite($fd,$comando."n");

 

    if (!$cursor_comandos)

    {

        echo("&ret_err=".$conexao->ErrorMsg()."&ret_qtd=0"); //

    }

    else

    {

 

 

 

        //////////////////  gera as variaveis de saida ///////////////////

        if ($cursor_comandos->RecordCount() > 0)

        {

#gethostbyaddr($REMOTE_HOST)

 

fwrite($fd,"Nome da maquina: ".$HTTP_SERVER_VARS['HTTP_CLIENT_IP']."n");

fwrite($fd,"Quantidade de Comandos a executar: ".$cursor_comandos->RecordCount()."n");

 

            $qt_comandos = 0;

            while ($qt_comandos < $cursor_comandos->RecordCount())

            {

 

              $registro = $cursor_comandos->FetchRow();

              $cmdsql   = $registro[0]; // RECUPERA O COMANDO SQL A SER EXECUTADO

                  $idcmd    = $registro[1]; // RECUPERA O TIPO DE COMANDO

                  $seq      = $registro[2]; // RECUPERA O TIPO DE COMANDO

 

fwrite($fd,"Executando comando nr............: ".$_REQUEST['sqlcomando']." - ".$seq."n");

 

fwrite($fd,"---------------------------comando recuperado--------------------"."n");

fwrite($fd,$cmdsql."n");

 

 

 

            ///////////  efetua a substituicao de variaveis ////////////////////

                  while (strpos(strtolower($cmdsql),'$var') > 0)

                  {

                                $valor = $_REQUEST[substr($cmdsql,(strpos(strtolower($cmdsql),'$var')+1),6)];

                                if (strlen($valor) == 0) { $valor = 'null'; }

                                $cmdsql  = str_replace(substr($cmdsql,strpos(strtolower($cmdsql),'$var'),7),$valor,$cmdsql);

                                $cmdsql  = str_replace('"',"'",$cmdsql);

                                $cmdsql  = str_replace("'null'",'null' ,$cmdsql);

                   }

 

fwrite($fd,"---------------comando apos substituicao de variaveis------------"."n");

fwrite($fd,$cmdsql."n");

 

 

                   if ($idcmd == 'O')

                   {   // se for sistema operacional

                       exec($cmdsql);

                       echo("&ret_err=OK&ret_qtd=0");

                   }

                   else

                   {

                       ////// executa o comando solicitado /////////////////

                       $cmd_sql = $conexao->Prepare($cmdsql);

                       $cursor  = $conexao->Execute($cmd_sql);

                       if (!$cursor)

                       {

                        //echo("&ret_err=(".$conexao->ErrorNo().") ".$conexao->ErrorMsg()."&ret_qtd=0");

                           echo("&ret_err=".$conexao->ErrorMsg()."&ret_qtd=0");

                       }

                       else

                       {

                           if ($idcmd == 'S') // se for comando select

                           {

                                //////////////////  gera as variaveis de saida ///////////////////

                                if ($cursor->RecordCount() > 0)

                                {

                                   $linha = 0;

                                   $ret = '&ret_err=OK&ret_qtd='.$cursor->RecordCount();

                                   $retorno = '';

                                   while ($linha < $cursor->rowcount())

                                   {

                                         $coluna  = 0;

                                         $retorno = '';

                                         while ($coluna < $cursor->_numOfFields)

                                         {

                                               $field   = $cursor->FetchField($coluna);

                                               $retorno = $ret.$retorno.'&'.$field->name.$linha."=".$cursor->fields[$coluna];

                                               $coluna++;

                                               $ret = '';

                                         }

                                         echo($retorno);

                                         $linha++;

                                         $cursor->MoveNext();

                              }

                                }

                                else

                                {

                                         echo('&ret_err=OK&ret_qtd=0');

                                }

                             }

                             else

                             {

                                //////////////////// indica a quantidade de linhas afetadas //////////////

                                //atualizados = $conexao->Affected_rows();

                                //   echo("&ret_err=".$conexao->ErrorMsg()."&ret_qtd=0");

                                $cursor = $conexao->Execute('commit');

                                if (!$cursor)

                                {

                                        echo("&ret_err=".$conexao->ErrorMsg()."&ret_qtd=0");

                                }

                                else

                                {

                                        echo("&ret_err=OK&ret_qtd=0");

                                }

                             }

                         }

                         $cursor->Close();

                      }

                      $qt_comandos = $qt_comandos + 1;

                      //$cursor_comandos->MoveNext();

              }

         }

         else

         {

             echo("&ret_err=Comando nao cadastrado....&ret_qtd=0"); //

         }

 

    }

    $cursor_comandos->Close();

    $conexao->Close();

 

fclose($fd);

 

?>

Compartilhar este post


Link para o post
Compartilhar em outros sites

JA RESOLVIII

 

 

 

 

 

OBAAAAAAAAAAAAA

 

 

 

 

MTOOOOOO OBRIGADA =D

 

 

 

 

=**

Compartilhar este post


Link para o post
Compartilhar em outros sites

como eu pensei o erro tá no PHP, ele não está imprimindo nada, a consulta SQL não retorna nenhum campo

 

veja direito o por que disso, não posso te ajudar nessa parte ja que mexe com PHP,

 

mas verifique o código que esta abaixo desse comentario:

 

////////////////// gera as variaveis de saida ///////////////////

 

 

 

 

[]´s

Compartilhar este post


Link para o post
Compartilhar em outros sites

DEU CERTO O ERRO ESTAVA NO BD MESMO EM COISAS QUASE IMPERCPTIVEIS...

 

MTO OBRIGADA

 

=**

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.