Ir para conteúdo

POWERED BY:

Arquivado

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

marcos.lavorato

Upload de arquivos em PHP

Recommended Posts

é simples.

 

no flash não existe um campo do tipo "file"

então o jeito é simular um

 

você deverá interagir com javascript

 

crie um campo text dinamico no flash

nomeie como "arquivo" (ou o nome de sua preferência)

 

crie um botão, no evento on(release) execute a ação getURL()

onde você deverá chamar uma função em JavaScript

 

getURL("java script:browseFile();");

crie outro botão

 

será o botão de enviar.

no evento on(release) coloque:

 

getURL("java script:submitFile();");

compile o seu .fla para gerar o seu swf

 

 

agora crie um arquivo html e coloque essa bagulheira aí:

 

<html>

<head>

 

  <title>TESTE </title>

 

<script language="JavaScript" type="text/javascript">

  <!--

    var ie4, nn4, nn6, o5;

    var arquivo = "";

    

    function detectBrowser()

    {

      ua = navigator.userAgent.toLowerCase();

 

      if ( navigator.appName == "Netscape" && parseInt(navigator.appVersion) == 5 )

        nn6 = true;

      else if (navigator.appName=="Netscape" && parseInt(navigator.appVersion) == 4 )

        nn4 = true;

      else if (   navigator.appName=="Microsoft Internet Explorer"

               && (ua.indexOf("opera") == -1 ) && parseInt(navigator.appVersion) >= 4 )

        ie4 = true;

      else if (   ( ua.indexOf("opera") != -1 ) && parseInt(navigator.appVersion) == 4 )

        o5 = true;         

      else

      {

        nodhtml = true;

      } 

    }

   

    detectBrowser();

 

    function browseFile()

    {     

      if (ie4)

        document.all['ieinput].click();

    }

 

    function submitFile()

    {

      if (ie4)

        document.all['ieform'].submit();

      else if (nn4)

        document.layers['lala'].document.nnform.submit();    

    }    

 

    function check()

    {    

      setInterval("arquivo=document.all['ieinput].value", 100);

      setInterval("document.all['movie'].SetVariable('arquivo', arquivo)", 100); 

    }

         

    if (ie4)

      setTimeout("check()", 1500);

 

  //-->

  </script>

 

 

 

</head>

 

<body>

 

<div id="lala" style="position:absolute;top:235;left:39;z-index:10">

 

<form id="ieform" 

<FORM ACTION="AQUI_O_LOCAL_DO_SCRIPT" METHOD="post" ENCTYPE="multipart/form-data">

<INPUT TYPE="file" NAME="arquivo">

 

<BR><BR>

<input  id="ieinput" type="file" size="19">  

</FORM>

 

</div>

 

<div id="upload browse" style="">

  <p><object id="movie" classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000"

codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=5,0,0,0"

width="320" height="150">

      <param name=movie value="seuarquivo.swf">

      <param name=quality value=best>

      <param name=bgcolor value=#FFFFFF>

      <param name=scale value=noborder>

      <embed src="seuarquivo.swf"

   scale=noborder

   quality=best

   bgcolor=#FFFFFF 

   width="320"

   height="150"

   name="upload browse"

   swliveconnect="true"

   type="application/x-shockwave-flash"

   pluginspage="http://www.macromedia.com/shockwave/download/index.cgi?P1_Prod_Version=ShockwaveFlash">

      </embed>

    </object></div>

 

</body>

</html>

é apenas um exemplo.

tendo isso creio que você pode fazer o resto

Compartilhar este post


Link para o post
Compartilhar em outros sites

Muito bom cara! gostei da sua solução... eu fiz um flog em flash com a possibilidade de se subir as fotos... e como não tinha todo esses esquemas... eu apenas abria um Pop-up com o Html q subiria o arquivo... Eu sabia um pouco da interação do Flash com o Javascript da pagina... mas como o meu conhecimento sobre javascript eh pouco... eu não sabia q atraves dele eu poderia setar uma variavel no flash... Isso abriu em muito o meu leque de opções.. Valeu mesmo... cheguei de bico nesse topico mas aprendi muito!Pq nunca achei um texto sobre isso na net heim? heim? heim??

Compartilhar este post


Link para o post
Compartilhar em outros sites

Eu estou usando o flash cs3 com internet explorer 6 e esses script não funciona...criei um novo arquivo com AS2 e talz e não funcionou..aparece o swf e embaixo 2 input file...mas não funciona...me parece q esta faltando uma parte do código...nessa parte aew:<form id="ieform" c puder fazer a correção ficarei grato,tenha um bom dia,t+flow

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.