Comunidad de diseño web y desarrollo en internet online

ayuda con formulario

Citar            
MensajeEscrito el 04 Feb 2008 07:48 am
hola, me urge su valiosa ayuda !!!

hace poco mi proveedor de hosting cambio de servidores y me reactivaron mi cuenta pero despues de eso mis formularios ya no servian, simplemente no me llegan los datos a mi email, no marca ningun error pero no me llega nada, ya comente esto con mi proveedor pero hasta ahora no me han solucionado nada y me urgen los formularios, quiero saber si me pueden ayudar a cambiar el metodo de mi formulario creado en flash que se conecta con php.

codigo del archivo php:

Código :

<?php
extract($_POST);
$MailTo="[email protected]"; //<----------------- MAIL
$dia=date("m.d.Y");
$hora=date("H:i:s");
$contenido="
El Mensaje se Envio el  $dia a las $hora:\n\n
----------------------------------------------------------------------------\n
Nombre: $nombre\n
E-mail: $email\n
Compañia: $compania\n
Telefono: $tel\n
----------------------------------------------------------------------------\n
Mensaje: $mensaje\n
----------------------------------------------------------------------------\n
";
mail($MailTo, "$subject (de $nombre $apellido)", $contenido, "From: $email");
?>


codigo AS del archivo en flash:

Código :

snd.onRelease = function () {
   
   ok = 0;                                        //variable bandera
   arroba = e.text.indexOf("@");                  //nos fijamos si hay arroba
   punto = e.text.indexOf(".");                   //nos fijamos si hay punto
   
   if(n.text == "nombre" || n.text == ""){     //si esta vacio o queda escrito el titulo, da error
      n.text = "complete el campo";
      ok = 1;
      }
   if(m.text == "mensaje" || m.text == ""){    //si esta vacio o queda escrito el titulo, da error
      m.text = "complete el campo";
      ok = 1;
      }
   if(t.text == "teléfono" || t.text == ""){    //si esta vacio o queda escrito el titulo, da error
      t.text = "complete el campo";
      ok = 1;
      }
   if(t.text == "email" || e.text == ""){    //si esta vacio o queda escrito el titulo, da error
      t.text = "complete el campo";
      ok = 1;
      }
   if(t.text == "compania" || c.text == ""){    //si esta vacio o queda escrito el titulo, da error
      t.text = "complete el campo";
      ok = 1;
      }
   if (arroba < 1 && punto < 1){                   //si esta vacio o queda escrito el titulo, da error
      e.text = "e-mail inválido";
      ok = 1;
      }   
   if(ok == 0){                                    //si ok = 0, o sea q esta todo bien
      envia();                                    //llamamos a la funcion envia()
      
      s.border = true;
   s.borderColor = 0x003366
      s.text = "Enviando mensaje, espere por favor...";
   }
}
//---------------------- boton borrar
clr.onRelease = function () {
   borrar();
   
   
}
//--------------------- función de enviado de datos
function envia() {
   
   //creamos un objeto para enviar al q le asignamos los valores de nustras variables
   enviar = new LoadVars();
   enviar.nombre = n.text;
   enviar.compania = c.text;
   enviar.email = e.text;
   enviar.tel = t.text;
   enviar.mensaje = m.text;
   
   enviar.onLoad = function(success) {
      borrar();
      };
   
   //               este es el archivo php
   sendmail = true;
   enviar.sendAndLoad("formulario.php", enviar, "POST");
}
//-------------------- función para resetear los campos
function borrar (){
   n.text = "";
   e.text = "";
   t.text= "";
   c.text= "";
   m.text = "";
   s.text = "Mensaje enviado, Gracias!";
   s.border = false;
   
   n.borderColor = 0xFFFFFF 
   e.borderColor = 0xFFFFFF 
   t.borderColor = 0xFFFFFF 
   m.borderColor = 0xFFFFFF 
   c.borderColor = 0xFFFFFF 
   
}


funcionaba perfectamente antes de que hicieran el cambio de servidores, lo mas extraño es que otras funciones en php si corren como joomla, foros, galerias, etc, pero el formulario no.

mi proveedor me digo que no podian activarme estas funcionespor seguridad: ASP_TAGS Y SEND_MAIL

tendra esto algo que ver, o que hago, ayudenme por fa...




.

Por bisho

39 de clabLevel



 

msie
Citar            
MensajeEscrito el 04 Feb 2008 06:31 pm
es probable que el "register_globals" del servidor esté desactiado :S

Puedes pelearte con el proveedor para que te lo active y te permita enviar correos... lo que normamlente pasa es que no está activado para evitar que el dominio se convierta en un mail bomber... (bueno, eso es lo que me han dicho)

La otra opción es que al PHP le agregues esto hasta arriba:

Código :

<?php 

foreach($_POST as $k=>$v){ 
$$k=$v; 
} 

if (!ini_get('register_globals')) { 
   $superglobales = array($_SERVER, $_ENV, 
       $_FILES, $_COOKIE, $_POST, $_GET); 
   if (isset($_SESSION)) { 
       array_unshift($superglobales, $_SESSION); 
   } 
   foreach ($superglobales as $superglobal) { 
       extract($superglobal, EXTR_SKIP); 
   } 
} 

?>


Con eso engañas al PHP para hacerle creer que "register_globals" están activos y pues ya con eso furula... ahora... es una opción...

Si no te sirve eso pues la vdd no sé qué más se pueda hacer... discute con el Proveedor de Hosting que no sea OGT y que te de chance...

Saludos

Por Stockman

Claber

145 de clabLevel



 

firefox

 

Cristalab BabyBlue v4 + V4 © 2011 Cristalab
Powered by ClabEngines v4, HTML5, love and ponies.