Foros del Web » Programando para Internet » PHP »

GLOBAL ya no existe(novato)

Estas en el tema de GLOBAL ya no existe(novato) en el foro de PHP en Foros del Web. Hola. Hace un año hice un curso de PHP, el profesor para enviar formularios nos dió esto: <?php global $APELLIDO1,$ANHO_TARJETA; mail("[email protected]","FORMULARIO_ALOJAMI ENTO", "APELLIDO1=$APELLIDO1\nANHO_TARJETA=$ANHO_TARJETA" ); Ahora, ...
  #1 (permalink)  
Antiguo 10/02/2003, 12:57
Avatar de palidowsky  
Fecha de Ingreso: febrero-2002
Ubicación: Galicia-España
Mensajes: 438
Antigüedad: 22 años, 8 meses
Puntos: 0
GLOBAL ya no existe(novato)

Hola.
Hace un año hice un curso de PHP, el profesor para enviar formularios nos dió esto:
<?php
global $APELLIDO1,$ANHO_TARJETA;
mail("[email protected]","FORMULARIO_ALOJAMI ENTO", "APELLIDO1=$APELLIDO1\nANHO_TARJETA=$ANHO_TARJETA" );

Ahora, parece que las variables globales no funcionan, que debo poner para que funcione. Ayuda por favor que soy un novato
  #2 (permalink)  
Antiguo 10/02/2003, 13:14
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 22 años, 10 meses
Puntos: 129
mm Hace un año ya estaba disponible los arrays superglobales .. $_GET .. $_POST .. etc ...

Revisa de donde (q método) provienen las variables y usa el array asociado que le corresponda ... Si usas method=Post en tu formulario .. pues $_POST['nombre_variable'] .. sino GET .. o el que corresponda.

Te invito a q leas las FAQ's de PHP .. en concreto esta:
http://www.forosdelweb.com/showthrea...989#post238989
(esa y la anterior)

Y sobre todo a hecharle un vistazo de vez en cuando al manual de PHP .. PHP crece y mejora constantemente ..

Un saludo,
  #3 (permalink)  
Antiguo 11/02/2003, 01:42
Avatar de palidowsky  
Fecha de Ingreso: febrero-2002
Ubicación: Galicia-España
Mensajes: 438
Antigüedad: 22 años, 8 meses
Puntos: 0
Entonces, lo que debo poner para que el formulario se envíe es:


<?php
mail ("[email protected]", "FORMULARIO DE ALOJAMIENTO", $_POST[`APELLIDO1`], [`APELLIDO2`];
php?>
  #4 (permalink)  
Antiguo 11/02/2003, 04:10
Avatar de palidowsky  
Fecha de Ingreso: febrero-2002
Ubicación: Galicia-España
Mensajes: 438
Antigüedad: 22 años, 8 meses
Puntos: 0
he puesto lo que aparece en el post de arriba y sigue sin funcionar. Por favor. alguien me puede echar una mano.
Gracias
  #5 (permalink)  
Antiguo 11/02/2003, 05:01
Avatar de banyuken  
Fecha de Ingreso: diciembre-2002
Ubicación: Madrid
Mensajes: 83
Antigüedad: 21 años, 11 meses
Puntos: 0
Comillas simples

Código PHP:
<?
mail 
("[email protected]""FORMULARIO DE ALOJAMIENTO"$_POST['APELLIDO1'], ['APELLIDO2'];
?>
Prueba así, saludos,
Banyú.
  #6 (permalink)  
Antiguo 11/02/2003, 05:03
Avatar de banyuken  
Fecha de Ingreso: diciembre-2002
Ubicación: Madrid
Mensajes: 83
Antigüedad: 21 años, 11 meses
Puntos: 0
Perdón, así mejor...

Código PHP:
<?
mail 
("[email protected]""FORMULARIO DE ALOJAMIENTO"$_POST['APELLIDO1'], $_POST['APELLIDO2'];
?>
  #7 (permalink)  
Antiguo 11/02/2003, 06:03
Avatar de palidowsky  
Fecha de Ingreso: febrero-2002
Ubicación: Galicia-España
Mensajes: 438
Antigüedad: 22 años, 8 meses
Puntos: 0
Gracias colega
Lo probaré.
  #8 (permalink)  
Antiguo 11/02/2003, 09:31
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 22 años, 10 meses
Puntos: 129
Lee bien la sintax de mail() ...

El 'body' lo tienes q formar concatenando todas las variables q uses .. NO separadas por comas ...

Insisto .. revisa la sintax de uso de mail()
http://www.php.net/manual/en/function.mail.php

Un saludo,
  #9 (permalink)  
Antiguo 11/02/2003, 09:39
Avatar de palidowsky  
Fecha de Ingreso: febrero-2002
Ubicación: Galicia-España
Mensajes: 438
Antigüedad: 22 años, 8 meses
Puntos: 0
he probado el código y funciona, lo único es que me manda los campos así:

rodriguez

gutierrez

Mientras que antes me lo mandaba así:
PRIMER APELLIDO= RODRÍGUEZ
SEGUNDO APELLIDO=GUTIERREZ,


¿Por que?
Gracias.
  #10 (permalink)  
Antiguo 11/02/2003, 13:28
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 22 años, 10 meses
Puntos: 129
Fijate en la parte donde llamas a tus variables originalmente:

"APELLIDO1=$APELLIDO1\nANHO_TARJETA=$ANHO_TARJETA" );

Y mira como lo estas haciendo ahora .. ¿ves algun APELLIDO=?

Solución rápida .. Si el problema q tenias es porque ahora tu servidor trabaja con register_globals a OFF .. (he de ahí q te oblique a recoger tus variables por el método q se use en el formulario .. GET/POST):

Código PHP:
<?
$APELLIDO1
=$_POST['APELLIDO1'];
$ANHO_TARJETA=$_POST['ANHO_TARJETA'];
//etc . igual con resto de variables .. Y luego tu mial() original ..

mail("[email protected]","FORMULARIO_ALOJAMIENTO""APELLIDO1=$APELLIDO1\nANHO_TARJETA=$ANHO_TARJETA");
?>
Se podría hacer sin usar esas variables intermedias .. concatenado a la hora de formar la función mail() ..

Un saludo,
  #11 (permalink)  
Antiguo 12/02/2003, 02:19
Avatar de palidowsky  
Fecha de Ingreso: febrero-2002
Ubicación: Galicia-España
Mensajes: 438
Antigüedad: 22 años, 8 meses
Puntos: 0
Gracias sinceras a los dos, me habeis salvado la vida.
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 22:00.