1. Este site usa cookies. Ao continuar a usar este site está a concordar com o nosso uso de cookies. Saber Mais.

Ajuda formulário de contacto flash > php > asp

Discussão em 'Web Development' iniciada por ikone, 29 de Março de 2008. (Respostas: 30; Visualizações: 2008)

  1. ikone

    ikone Power Member

    Boa tarde
    Preciso de ajuda no meu formulário de contacto.
    O formulário envia para o email mas quando vou ver o mail n aparece remetente nem nome , mail , tel , mensagem, não aparece nada.
    Estou farto de dar as voltas com esse formulário e não consigo ver onde esta o erro.
    Não sei se é no flash ou no php e asp preciso mesmo de ajuda para resolver esse problema.
    o formulário encontra-se www.ginobianchishoes.com.

    ao enviar aparece este erro -
    Warning: reset() [function.reset]: Passed variable is not an array or object in /home/ginobian/public_html/contactp.php on line 15

    Warning: current() [function.current]: Passed variable is not an array or object in /home/ginobian/public_html/contactp.php on line 20
    Your message was successfully sent!

    Ricardo Gomes,
     
  2. hostmake

    hostmake Power Member

    não encontro formulário nenhum no site.

    mas e se deixares a malta ver as linhas do contactp.php, e o action que sai do flash.
     
  3. ikone

    ikone Power Member

    O formulario esta em contactos.

    ficheiro .php

    Código:
    <?
    Error_Reporting(E_ALL & ~E_NOTICE);
     while ($request = current($_REQUEST)) {
      if (key($_REQUEST)!='recipient') {
      $pre_array=split ("&777&",  $request);
      $post_vars[key($_REQUEST)][0]=$pre_array[0];
      $post_vars[key($_REQUEST)][1]=$pre_array[1];
     }
     next($_REQUEST);
    }
     
    reset($post_vars);
    $subject="From ".$post_vars['your_name'][0] ;
    $headers= "From: ".$post_vars['your_email'][0] ."\n";
     $headers.='Content-type: text/html; charset=iso-8859-1';
     $message='';
      while ($mess = current($post_vars)) {
       if ((key($post_vars)!="i") && (key($post_vars)!="your_email") && (key($post_vars)!="your_name")) {
       $message.="<strong>".$mess[1]."</strong>&nbsp;&nbsp;&nbsp;".$mess[0]."<br>";
     }
     next($post_vars);
     }
    mail($_REQUEST['recipient'], $subject,  "
    <html>
    <head>
     <title>Contact letter</title>
    </head>
    <body>
    <br>
      ".$message."
    </body>
    </html>" , $headers);
    echo ("Your message was successfully sent!");
    ?>
    <script>
     resizeTo(300, 300);
    </script>

    ficheiro .asp

    Código:
    <%
     for i=1 to 7
       message=Request("message")
     next
       message=message + Request("message") 
      smtpServer = "enter your SMTP SERVER HERE"
      smtpPort = 25
      
      name = Request("Your_Name:")
      Set myMail = CreateObject("CDO.Message") 
      myMail.Subject = "from " & name
      myMail.From = Request("Your_Email:")
      myMail.To = Request("recipient")
      myMail.HTMLBody = "<html><head><title>Contact letter</title></head><body><br>" & message & "</body></html>"
      myMail.Configuration.Fields.Item("[URL]http://schemas.microsoft.com/cdo/configuration/sendusing[/URL]") = 2
      myMail.Configuration.Fields.Item("[URL]http://schemas.microsoft.com/cdo/configuration/smtpserver[/URL]") = smtpServer
      myMail.Configuration.Fields.Item("[URL]http://schemas.microsoft.com/cdo/configuration/smtpserverport[/URL]") = smtpPort
      myMail.Configuration.Fields.Update 
      myMail.Send
     
    %>

    action formulario

    Código:
    rec = "[EMAIL="[email protected]"][email protected][/EMAIL]";
    serv="php";
    var fields_descriptions = Array("", Array("t1", "Seu Nome", "Seu Nome"), Array("t2", "Seu E-mail", " Seu E-mail"), Array("t3", "Seu Contacto (Tel\Telem)", "Seu Contacto (Tel\Telem)"), Array("t4", "Escreva  a sua mensagem", "Escreva  a sua mensagem"), Array("t5", "field_2", "E-mail:"), Array("t6", "field_3", "Morada:"), Array("t7", "field_4", "fax:"));
    function reset_txt(name,name2,value) {
      path=eval(_target);
      path[name2]=value;
     
     this[name].onSetFocus=function() {
      path=eval(_target);
      if(path[name2]==value) { path[name2]="";} 
     }
     
     this[name].onKillFocus=function() {
      path=eval(_target);
      if(path[name2]=="") { path[name2]=value;} 
     }
    }
    
    for (i=1; i<=fields_descriptions.length; i++) {
     reset_txt("t"+i, fields_descriptions[i][1], fields_descriptions[i][2]);
    }

    action botão enviar

    Código:
    on (rollOver) {
     this.gotoAndPlay("s1");
    }
    on (releaseOutside, rollOut) {
     this.gotoAndPlay("s2");
    }
    on (release) {
     for (i=1; i<_parent.fields_descriptions.length; i++) {
      if (_parent[_parent.fields_descriptions[i][1]] != _parent.fields_descriptions[i][2]) {
       this[_parent.fields_descriptions[i][1]] = _parent[_parent.fields_descriptions[i][1]]+"&777&"+_parent.fields_descriptions[i][2];
      }
      _parent.reset_txt(_parent["t"+i], _parent.fields_descriptions[i][1], _parent.fields_descriptions[i][2]);
     }
     this.recipient = _parent.rec;
     i = undefined;
     getURL("contactp."+_parent.serv, "_blank", "POST");
    }

    obrigado,
     
    Última edição pelo moderador: 30 de Março de 2008
  4. hostmake

    hostmake Power Member

    Não sou particularmente fã dessas novas maneiras de tratar arrays no PHP5, mas a gente chega lá..

    podes-me faszer um: print_r($_REQUEST); sff?
     
  5. ikone

    ikone Power Member

    como faço para adicionar os ficheiros no techzone assim colocava o ficheiro .fla e o .php

    este é codigo action do formulario:
    ---------------------------------------------




    -------------------------------------

    este é codigo do botão enviar:

     
    Última edição pelo moderador: 30 de Março de 2008
  6. hostmake

    hostmake Power Member

    No teu ficheiro de PHP faz:

    print_r($_REQUEST);
     
  7. ikone

    ikone Power Member

    Desculpa n percebo o que queres dizer com isso , isso é o que? e como faço?
    obrigado,
     
  8. ikone

    ikone Power Member

    Eu adicionei o codigo que me deste no ficheiro .php e enviei para a net , mas esta tudo na mesma, isso é se aquele codigo era para colocar no php.
    preciso de ajuda para resolver essa situação.
    obrigado,
     
  9. hostmake

    hostmake Power Member

    Sim, mete aquele código no inicio do ficheiro PHP

    a seguir ao <? e antes do Error_R...

    mete isto:

    PHP:
    echo "<pre>".print_r($_REQUEST)."</pre>";

    e depois envia o email, e o php vai-te mostrar umas coisas novas, mostra-nos essas coisas novas.
     
  10. michael c

    michael c Power Member

    Vi no teu código que estás a tentar enviar o mail para um mail externo ao dominio. Julgo que o problema pode vir daí. Experimenta mandar o mail para um mail do dominio, por exemplo, [email protected]. Isto poderá resolver o problema.

    Offtopic: O site, está pesadissimo. Começo a perceber porque certos users ficam com aversão a sites com base neste tecnologia. No futuro deves ter mais cuidado quando construires um site em flash, tenta dividir o site em vários SWFs. Para entrar estive mais de 5minutos à espera. Isto é impensável!

    Cumps
     
  11. ikone

    ikone Power Member

  12. hostmake

    hostmake Power Member

    Gatekeeper, deve ser do host... está pesado, mas aqui carrega-me em segundos.

    ikone, estás a perder uma variável pelo meio do processo.. já agora o que é que recebes no email? ou não recebes email de todo?
     
  13. ikone

    ikone Power Member

    recebo email, mas sem identificação do remetente e sem informação qualquer informação.
     
  14. hostmake

    hostmake Power Member

    a seguir a esta linha:
    PHP:
    echo ("Your message was successfully sent!");


    e antes do
    PHP:
    ?>


    mete isto:

    PHP:
    $headers "From: $_REQUEST['Seu-E-mail']"),
    mail($_REQUEST['recipient'], "Contacto""O Nome e: ".$_REQUEST['Seu_Nome'], $headers);
    e manda outro mail :)
     
  15. michael c

    michael c Power Member


    @hostmake: O facto de eu ter uma ligação que funciona a 750kb tambem pode estar a condicionar o processo de download:D Infelizmente pago 16MB mas tenho 750kb...enfim.

    @ikone: Se não te quiseres estar a chatear mais com isso diz-me que eu tenho aqui um formulário de contacto de email à base de flash+php que funciona na perfeição.

    Cumps
     
  16. hostmake

    hostmake Power Member

    Aquilo é um script de SwishMax, pelo que eu vi no google.. ou seja, acho que ele também não trabalha mesmo com flash.

    E aquilo é apenas código desnecessário, tenho a certeza que assim já vai dar, só precisa de por um html bonito :P


    :offtopic:
    Bem.. já reclamavas para a deco ou assim não?
    Resulta sempre :D ... A minha mãe é sócia! xD
    Ligam-me logo da Netcabo, da secção de Despiste de Tráfego!
    :offtopic:
     
  17. michael c

    michael c Power Member

    Tens razão sim senhor. É um template da Swishmax. Pois, um html bonito;)


    Infelizmente quando se vive num sitio onde as infraestruturas em termos de linha são fracas e a central está a mais de 7KMs não há DECO que possa valer. A forma é aguentar mesmo. Até porque não há outro operador em condições de fornecer o serviço nesta zona a mais velocidade...por incrivel que pareça.

    Cumps
     
  18. ikone

    ikone Power Member

    agora da este erro,

    Parse error: syntax error, unexpected T_ENCAPSED_AND_WHITESPACE, expecting T_STRING or T_VARIABLE or T_NUM_STRING in /home/ginobian/public_html/contactp.php on line 43
     
  19. hostmake

    hostmake Power Member

    eu fiz shift o teclado é que coiso..

    aqui:
    PHP:
    $headers "From: $_REQUEST['Seu-E-mail']"),
    é um ; e não uma ,
     
  20. ikone

    ikone Power Member

    continua a dar erro ,
    PHP:
    Parse errorsyntax errorunexpected T_ENCAPSED_AND_WHITESPACEexpecting T_STRING or T_VARIABLE or T_NUM_STRING in /home/ginobian/public_html/contactp.php on line 43
     

Partilhar esta Página