Foros del Web » Programando para Internet » PHP »

[SOLUCIONADO] Formulario funciona en PHP 5.3 pero noe en 5.4 y superiores

Estas en el tema de Formulario funciona en PHP 5.3 pero noe en 5.4 y superiores en el foro de PHP en Foros del Web. Amigos. No se mucho de programación y tengo un problema con un formulario simple de contacto. Este formulario lo vengo utilizando en php 5.3 y ...
  #1 (permalink)  
Antiguo 20/10/2015, 09:46
 
Fecha de Ingreso: noviembre-2007
Mensajes: 69
Antigüedad: 16 años, 5 meses
Puntos: 0
Formulario funciona en PHP 5.3 pero noe en 5.4 y superiores

Amigos.

No se mucho de programación y tengo un problema con un formulario simple de contacto. Este formulario lo vengo utilizando en php 5.3 y funciona perfectamente pero en versiones 5.4 o superiores ya no funciona.

El código es el siguiente:

Código HTML:
<?
$MailToAddress = "CUENTA_DE_CORREO";
$MailSubject = "ASUNTO";
    if (!$MailFromAddress) {
    $MailFromAddress = "CUENTA_DE_CORREO";
    }
 
$Header = "CONTACTO";
$Footer = "";
 
    if (!is_array($HTTP_POST_VARS))
    return;
    reset($HTTP_POST_VARS);
    while(list($key, $val) = each($HTTP_POST_VARS)) {
    $GLOBALS[$key] = $val;
    $val=stripslashes($val);
    $Message .= "$key = $val\n";
    }
 
    if ($Header) {
    $Message = $Header."\n\n".$Message."\n\n";
    }
 
    $Message .= "REMOTE HOST: ".$REMOTE_HOST."\n";
    $Message .= "REMOTE USER: ". $REMOTE_USER."\n";
    $Message .= "REMOTE ADDR: ". $REMOTE_ADDR."\n";
 
    if ($Footer) {
    $Message .= "\n\n".$Footer;
    }
 
mail( "$MailToAddress", "$MailSubject", "$Message", "From: $MailFromAddress");
header ("Location: http://DOMINIO/CONFIRMACION_DE_RECEPCION");
?> 
Les agradeceré mucho su ayuda si me ndican que debo cambiar para que funciones en php 5.4 y superiores.

Muchas gracias desde ya.
  #2 (permalink)  
Antiguo 20/10/2015, 10:56
Avatar de hhs
hhs
Colaborador
 
Fecha de Ingreso: junio-2013
Ubicación: México
Mensajes: 2.995
Antigüedad: 10 años, 10 meses
Puntos: 379
Respuesta: Formulario funciona en PHP 5.3 pero noe en 5.4 y superiores

Marca algún error ? y de ser así puedes publicarlo ? o explicar que pasa cuando lo ejecutas
__________________
Saludos
About me
Laraveles
A class should have only one reason to change.
  #3 (permalink)  
Antiguo 20/10/2015, 11:35
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años
Puntos: 2534
Respuesta: Formulario funciona en PHP 5.3 pero noe en 5.4 y superiores

Pues yo sí veo el código plagado de viejas practicas así como funcionalidad obsoleta, no me extraña para nada que haya dejado de funcionar.

¿Cómo comenzar a corregir?

1. Usar siempre <?php
2. Habilitar el reporte de errores
3. $HTTP_POST_VARS ya no se sirve, usa $_POST
4. No uses $GLOBALS jamás, esa practica es mala y arcaica

Y claro, cuando consigas ver un error por favor debes compartirlo, igual debes revisar los logs de error por si hace falta más información.

PDTA: y por favor consulta en el manual, ahí viene una guía de migración entre las versiones que mencionas, no hace falta que tengamos que repetirlo todo aquí.
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #4 (permalink)  
Antiguo 20/10/2015, 14:11
 
Fecha de Ingreso: noviembre-2007
Mensajes: 69
Antigüedad: 16 años, 5 meses
Puntos: 0
Respuesta: Formulario funciona en PHP 5.3 pero noe en 5.4 y superiores

Cita:
Iniciado por pateketrueke Ver Mensaje
Pues yo sí veo el código plagado de viejas practicas así como funcionalidad obsoleta, no me extraña para nada que haya dejado de funcionar.

¿Cómo comenzar a corregir?

1. Usar siempre <?php
2. Habilitar el reporte de errores
3. $HTTP_POST_VARS ya no se sirve, usa $_POST
4. No uses $GLOBALS jamás, esa practica es mala y arcaica

Y claro, cuando consigas ver un error por favor debes compartirlo, igual debes revisar los logs de error por si hace falta más información.

PDTA: y por favor consulta en el manual, ahí viene una guía de migración entre las versiones que mencionas, no hace falta que tengamos que repetirlo todo aquí.

Muchas gracias por tu ayuda pateketrueke. Cambiando $HTTP_POST_VARS por $_POST ya funciona.

Saludos.

Etiquetas: formulario
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 05:33.