Comunidad de diseño web y desarrollo en internet online

PHP para formulario funciona con Versión: 4.4.9 pero NO CON

Citar            
MensajeEscrito el 02 Sep 2009 03:19 am
:? Hola a todos!
Tengo un problema que sé que es bastante frecuente y que lo han tratado dentro de los foros muchas veces, sin embargo no he logrado resolverlo.

Tengo mi formulario (de contacto) creado en flash y lo he probado varias veces desde el flash player en mi computadora y... ¡FUNCIONA perfecto! Llega el correo y toda la información del formulario.... El problema es cuando lo subo a mi website vuelvo a realizar una prueba y está vez... ¡Ya no FUNCIONA! marca "Problema con el servidor".

Realizando una prueba en un servidor diferente, el formulario también ¡FUNCIONA perfectamente!, no sé si sea porque la versión de php de este servidor es la 4.4.9 y la de mi servidor es versión 5.1.6

Me podrían orientar sobre este tema por favor? les agradezco de antemano.

El AS que estoy utilizando en el el fla es:

Código :

[code][as]enviar = function () {
   if (email_txt.text.length && nombre_txt.length && titulo_txt.length && mensaje_txt.length) {
      if (email_txt.text.indexOf("@") != -1 && email_txt.text.indexOf(".") != -1) {
         form_lv = new LoadVars();
         form_lv.nombre = nombre_txt.text;
         form_lv.mail = email_txt.text;
         form_lv.mensaje = mensaje_txt.text;
         form_lv.titulo = titulo_txt.text;
         form_lv.sendAndLoad("http://www.miwebsite.com/send.php", form_lv, "POST");
         mensaje_txt.text = "Enviando Mensaje..";
         nombre_txt.text = "";
         email_txt.text = "";
         titulo_txt.text = "";
         form_lv.onLoad = function() {
            trace("LLEGO");
            if (this.estatus == "ok") {
               mensaje_txt.text = "Tu mensaje fue enviado...";
               nombre_txt.text = "";
               email_txt.text = "";
               titulo_txt.text = "";
            } else {
               mensaje_txt.text = "Problemas con el servidor\nIntentalo de Nuevo";
            }
         };
      } else {
         email_txt.text = "Correo Invalido";
      }
   } else {
      email_txt.text = "Dato Necesario";
      nombre_txt.text = "Dato Necesario";
      titulo_txt.text = "Dato Necesario";
      mensaje_txt.text = "Dato Necesario";
   }
};
borrar = function () {
   nombre_txt.text = "";
   email_txt.text = "";
   mensaje_txt.text = "";
   titulo_txt.text = "";
};
enviar_btn.onRelease = enviar;
borrar_btn.onRelease = borrar;
[/as][/code]


Y el PHP es:

Código PHP :

<?php
if(isset($_POST["nombre"]) && isset($_POST["titulo"]) && isset($_POST["mail"]) && isset($_POST["mensaje"]) ){
    $fecha = date("D-M-y H:i");
   $mymail = "[email protected]";
   $subject = "Contacto MILLAN";
   $contenido = $_POST["nombre"]." Escribio :\n";
   $contenido .= $_POST["mensaje"]."\n\n";
   $contenido .= "el mensaje fue enviado el ".$fecha;
   $header = "From:".$_POST["mail"]."\nReply-To:".$_POST["mail"]."\n";
   $header .= "X-Mailer:PHP/".phpversion()."\n";
   $header .= "Mime-Version: 1.0\n";
   $header .= "Content-Type: text/plain";
   mail($mymail, $subject, utf8_decode($contenido) ,$header);
   echo "&estatus=ok&";
}
?>

Por what_about

2 de clabLevel



 

firefox
Citar            
MensajeEscrito el 02 Sep 2009 12:49 pm
Debe ser porque en el sevidor remoto la función mail() no está disponible.

Por DriverOp

Claber

2510 de clabLevel



 

opera
Citar            
MensajeEscrito el 02 Sep 2009 01:59 pm
con firebug podrías analizar si es que tu swf tiene salida de variables, por otro lado, estas usando una ruta absoluta, quizás esa ruta la pones mal ¿no seria mas practico usar una ruta relativa?

Por Inyaka

Claber

3176 de clabLevel

9 tutoriales
2 articulos

Genero:Masculino   Desarrollador de GAIA

Programador y fotógrafo

firefox
Citar            
MensajeEscrito el 02 Sep 2009 03:07 pm

DriverOp escribió:

Debe ser porque en el sevidor remoto la función mail() no está disponible.


tienes razón, ahora que me acuerdo una ves me paso (hace mucho) lo que hice fue llamar al hosting y protestar cada 30 minutos.

claro que también es bueno verificar que el sistema esta funcionando correctamente

Por Inyaka

Claber

3176 de clabLevel

9 tutoriales
2 articulos

Genero:Masculino   Desarrollador de GAIA

Programador y fotógrafo

firefox
Citar            
MensajeEscrito el 02 Sep 2009 04:08 pm
Muchas gracias a los dos por su respuesta.

Si no es mucha molestia me podrían ayudar a saber cómo puedo verificar si la función mail() del sevidor remoto no está disponible.?

Muchas gracias.

Por what_about

2 de clabLevel



 

safari
Citar            
MensajeEscrito el 02 Sep 2009 05:21 pm
En un archivo de texto usando el Bloc de Notas escribe:

Código PHP :

<?php phpinfo(); ?>


Guarda el archivo como info.php, súbelo al hosting, invócalo con tu navegador, por ejemplo: http://www.example.com/info.php
Te mostrará la configuración de PHP en el servidor remoto. En la sección "PHP Core" busca la línea "disable_functions", allí están listadas las funciones PHP desabilitadas en el servidor.

Por DriverOp

Claber

2510 de clabLevel



 

opera
Citar            
MensajeEscrito el 04 Sep 2009 05:19 pm
Gracias DriverOp

Ya realizé esto y me aparece lo siguiente

disable_functions no value no value

Se puede interpretar como desactivadas?

Gracias!

Por what_about

2 de clabLevel



 

safari
Citar            
MensajeEscrito el 04 Sep 2009 05:48 pm
No. Significa que ninguna función está desactivada. Por lo que sí, la función mail() se puede usar. Sin embargo eso no es todo, también falta saber si el server tiene sendmail (sendmail es el programa en Unix que se encarga de enviar mails, la funcion mail() no hace más que pasarle parámetros a ese programa), me temo que vas a tener que contactar a la gente de tu hosting para eso.

Pero!. Yo te sugiero otra solución y es no depender de la función mail() para nada. Mira este script, es el que yo uso en todas partes y no he tenido mayores problemas: http://swiftmailer.org/

Por DriverOp

Claber

2510 de clabLevel



 

opera
Citar            
MensajeEscrito el 04 Sep 2009 06:13 pm
De verdad muchas gracias DriverOp por el seguimiento,

Los fatos que me aparecen en el PHP core de mi servidor están así

allow_call_time_pass_reference Off Off
allow_url_fopen On On
always_populate_raw_post_data Off Off
arg_separator.input & &
arg_separator.output & &
asp_tags Off Off
auto_append_file no value no value
auto_globals_jit On On
auto_prepend_file no value no value
browscap no value no value
default_charset no value no value
default_mimetype text/html text/html
define_syslog_variables Off Off
disable_classes no value no value
disable_functions no value no value
display_errors Off Off
display_startup_errors Off Off
doc_root no value no value
docref_ext no value no value
docref_root no value no value
enable_dl On On
error_append_string no value no value
error_log no value no value
error_prepend_string no value no value
error_reporting 2047 2047
expose_php On On
extension_dir /usr/lib64/php/modules /usr/lib64/php/modules
file_uploads On On
highlight.bg #FFFFFF #FFFFFF
highlight.comment #FF8000 #FF8000
highlight.default #0000BB #0000BB
highlight.html #000000 #000000
highlight.keyword #007700 #007700
highlight.string #DD0000 #DD0000
html_errors On On
ignore_repeated_errors Off Off
ignore_repeated_source Off Off
ignore_user_abort Off Off
implicit_flush Off Off
include_path .: .:
log_errors On On
log_errors_max_len 1024 1024
magic_quotes_gpc Off Off
magic_quotes_runtime Off Off
magic_quotes_sybase Off Off
mail.force_extra_parameters no value no value
max_execution_time 30 30
max_input_nesting_level 64 64
max_input_time 60 60
memory_limit 32M 32M
open_basedir /home/httpd/vhosts/millanejecentral.com.mx/httpdocs:/tmp no value
output_buffering 4096 4096
output_handler no value no value
post_max_size 10M 10M
precision 14 14
realpath_cache_size 16K 16K
realpath_cache_ttl 120 120
register_argc_argv Off Off
register_globals Off Off
register_long_arrays Off Off
report_memleaks On On
report_zend_debug On On
safe_mode On Off
safe_mode_exec_dir no value no value
safe_mode_gid Off Off
safe_mode_include_dir no value no value
sendmail_from no value no value
sendmail_path /usr/sbin/sendmail -t -i /usr/sbin/sendmail -t -i

serialize_precision 100 100
short_open_tag On On
SMTP localhost localhost
smtp_port 25 25
sql.safe_mode Off Off
track_errors Off Off
unserialize_callback_func no value no value
upload_max_filesize 10M 10M
upload_tmp_dir no value no value
user_dir no value no value
variables_order EGPCS EGPCS
xmlrpc_error_number 0 0
xmlrpc_errors Off Off
y2k_compliance On On
zend.ze1_compatibility_mode Off Off

Pero la verdad es que no entiendo mucho al respecto.

Paralelamente intentaré probar con tu recomendación. Gracias nuevamente.

Por what_about

2 de clabLevel



 

safari

 

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