Foros del Web » Programando para Internet » PHP »

PHP Ilogico, que esta mal ?

Estas en el tema de PHP Ilogico, que esta mal ? en el foro de PHP en Foros del Web. Hola chic@s!!!!! Bueno voy a tratar de ser claro y especifico en mi problemilla, si no lo consigo, favor avisenme!!! Tengo un pequeño codigo en ...
  #1 (permalink)  
Antiguo 11/03/2005, 07:41
Avatar de saymon  
Fecha de Ingreso: septiembre-2003
Ubicación: Panama
Mensajes: 318
Antigüedad: 20 años, 7 meses
Puntos: 0
PHP Ilogico, que esta mal ?

Hola chic@s!!!!!

Bueno voy a tratar de ser claro y especifico en mi problemilla, si no lo consigo, favor avisenme!!!

Tengo un pequeño codigo en php para que me envie un email, primero tengo un archivo llamado email-webmaster.php, en esta pagina se recogen los datos del email para luego ejecutar (o enviarla) a un archivo llamado email-webmaster-action.php, bueno en este archivo (codigo) es donde esta mi problema. voy a pegar el codigo para que lo vean. el que tengo actual.

<?PHP
//$remit= "Remitente:" . $remitente;
mail('[email protected]',$asunto, $mensaje, $remitente);
header("Location:/quienes-somos.php?msg=enviado");
//echo $remit
?>


Este codigo me funciona bien, me mada el mail, pero lo que yo quiero hacer es enviar como remitente (en la funcion mail()) la variable $remit, como la que ven en el comentario, osea en esta variable yo recojo el campo remitente y lo concateno con la palabra "Remitente: ", esto es para que en el correo me llege algo mas o menos asi: "Remitente: test@hotmail .com" y no solamente el correo, el codigo que yo pongo para hacer esto es:

<?PHP
$remit= "Remitente:" . $remitente;
mail('[email protected]',$asunto, $mensaje, $remit);
header("Location:/quienes-somos.php?msg=enviado");
//echo $remit
?>


Pero este codigo no me funciona, porque no me esta enviano nada, por favor alguien me puede decir porque no me funciona o que estoy haciendfo mal o que es lo que me falta, o bueno alguna alternativa que exista que me permita hacer esto.

haaaaa nota: si mando a imprimir la variable $remit me pinta en pantalla lo que quiero mandar, (es el "echo" que tengo comentariado), eso quiere decir que la variable $remit tiene la informacion, ahora la pregunta del millon de dolares es PORQUE NO LA ENVIA.

Bueno de ante manos muchas gracias, le pido toda su colaboracion con esto please, es que este concepto lo voy a usar en otras paginas mas estructuradas....
Asi que deseo me ayuden, bueno creo me di a explicar bien, sino bueno me dicen

ciao y saludos desde panama

Última edición por saymon; 11/03/2005 a las 08:32
  #2 (permalink)  
Antiguo 11/03/2005, 09:15
Avatar de nicolaspar  
Fecha de Ingreso: noviembre-2004
Ubicación: Villa Ballester Bs-As|Ar
Mensajes: 2.002
Antigüedad: 19 años, 5 meses
Puntos: 34
No es "From:" en vez "Remitente:" el header necesario?
__________________
Mi punto de partida es Que Bueno Lo Nuevo
  #3 (permalink)  
Antiguo 11/03/2005, 09:26
 
Fecha de Ingreso: febrero-2004
Ubicación: Bogotá, Colombia
Mensajes: 191
Antigüedad: 20 años, 2 meses
Puntos: 1
si, la sintaxis debe ser mail($destino, $asunto, $mensaje, "From: ".$remitente);
  #4 (permalink)  
Antiguo 11/03/2005, 09:50
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 22 años, 3 meses
Puntos: 129
El cuarto parámetro de mail .. no es una "cabecera" .. eso significa que son un montón de opciones que par el caso y para ese "parámetro" de esa función es una "cadena" (string) ..

Por eso se usa minimo: "FROM: $remitente" .. pero podrían ser muchas más (de hecho es recomendable que uses más cabeceras HTTP que definen que tipo de e-mail estás enviando...

Revisa la documentación oficial de PHP sobre dicha función:
www.php.net/mail

Un saludo,
  #5 (permalink)  
Antiguo 11/03/2005, 10:10
Avatar de nicolaspar  
Fecha de Ingreso: noviembre-2004
Ubicación: Villa Ballester Bs-As|Ar
Mensajes: 2.002
Antigüedad: 19 años, 5 meses
Puntos: 34
Así es como debe ser...Te recomiendo usar al menos las siguientes cabeceras:
Código PHP:
<?php
$headers  
"From: [email][email protected][/email] \r\n";#Tu remitente
$headers .= "MIME-Version: 1.0\r\n";#La version del MIME (encoder del mail)
$headers .= "Content-Type: text/html; charset=\"iso-8859-1\"\r\n"; (El content typey su iso)
$headers .= "Content-Transfer-Encoding: 8bit\r\n"# El encoding, es reomendado usar 8bit?>
Luego pone al final de la funcion email la variable $headers.
__________________
Mi punto de partida es Que Bueno Lo Nuevo

Última edición por nicolaspar; 11/03/2005 a las 10:11
  #6 (permalink)  
Antiguo 11/03/2005, 11:55
Avatar de saymon  
Fecha de Ingreso: septiembre-2003
Ubicación: Panama
Mensajes: 318
Antigüedad: 20 años, 7 meses
Puntos: 0
garacias chicos por la respuesta, bueno algo en lo que quiero imnplementar esto es en un formulario pero con bastantes campos (nombre, apelido, pais, telefono, direccion, asunto del tema, detalle, etc..) osea yo pensaba hacer algo parecido con lo que quieria hacer aqui, recoger esos datos concatenar los datos, para que saliera mas o menos asi
Nombre: Anibal
Apellido: Diaz
Pais: panama
Asunto: problemas de acceso.
Detalle: Cuando colocoa mi us.......

bueno que esos campos me lo mandara por medio de la funcion mail, osea, para saber en el momento exacto que me envian eso y que llege directo a mi correo, pero lo que pensaba hacer era concatenar esos datos en una variable como estaba haciendo con la variable $remit pero no se si en realidad esto se puede hacer, por favor, ustedes que son los expertos en esto, me podrian orientar en como hacerlo o si se puede hacer, bueno un poco de codigo no caeria mal
De ante masno, muchas gracias
  #7 (permalink)  
Antiguo 11/03/2005, 12:19
Avatar de nicolaspar  
Fecha de Ingreso: noviembre-2004
Ubicación: Villa Ballester Bs-As|Ar
Mensajes: 2.002
Antigüedad: 19 años, 5 meses
Puntos: 34
No, los tenes que concatenar a la variable $mensaje.
__________________
Mi punto de partida es Que Bueno Lo Nuevo
  #8 (permalink)  
Antiguo 11/03/2005, 12:24
Avatar de saymon  
Fecha de Ingreso: septiembre-2003
Ubicación: Panama
Mensajes: 318
Antigüedad: 20 años, 7 meses
Puntos: 0
GREAT!!
lo importante es que se puede, bueno, y se le puede dar formato y todo, osea usar la etiqueñas HTML, <BR> <b> y eso?, sabran de alguna documetacion para esto, please, bueno si no de mucho pedir

cioa
  #9 (permalink)  
Antiguo 11/03/2005, 12:56
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 22 años, 3 meses
Puntos: 129
saymon

Las cabeceras que mostró nicolaspar indican (una de ellas) que el e-mail lo deseas en formato HTML .. (para que se interprete todo el HTML que puedas montar en tu "cuerpo" del mensaje).

Por lo demás la documentación existe .. www.php.net/mail .. (no sé si la llegastes a ver .. pero ahí está todooo esto).

Un saludo,
  #10 (permalink)  
Antiguo 11/03/2005, 13:12
Avatar de saymon  
Fecha de Ingreso: septiembre-2003
Ubicación: Panama
Mensajes: 318
Antigüedad: 20 años, 7 meses
Puntos: 0
bueno voy a ponerme manos a la obra para ver como me sale esto, luego les cuento, quizas mañana
  #11 (permalink)  
Antiguo 12/03/2005, 10:00
Avatar de saymon  
Fecha de Ingreso: septiembre-2003
Ubicación: Panama
Mensajes: 318
Antigüedad: 20 años, 7 meses
Puntos: 0
Enviar datos de un formularion por PHP a un Correo

Bueno chicos estoy implementando lo que me dijeron pero tengo un problema, bueno les explico lo que quiero hacer:
Deseo recoger unos datos de un formulario y enviarlo por email, mira aqui tengo el codigo pero no me funciona, creo que no estoy concatenando mal, les miuestro:

<?
$destinatario = "[email protected]";
$asunto = "Posible Cliente de SolucionWebX";
$cuerpo =
'
<html>
<head>
<title>Prueba de correo</title>
</head>
<body>
<center><h3>Datos de un Usuario de SolucionWebX</h3></center>
<p>
<b>Nombre:</b>'; echo $nombre;
'<b>Empresa:</b>'; echo $empresa;
'<b>Ciudad:</b>'; echo $ciudad;
'<b>Direccion:</b>'; echo $direccion;
'<b>E-mail:</b>'; echo $email;
'<b>Tel. Oficina:</b>'; echo $teloficina;
'<b>Celular:</b>'; echo $celular;
'<b>Asuntos:</b>'; echo $asunto;
'<b>Descripcion:</b>'; echo $descripcion;
'<b>Area de la Empresa:</b>'; echo $dedicaempresa;
'</p>
</body>
</html>
'
;

//para el envío en formato HTML
$headers = "MIME-Version: 1.0\r\n";
$headers .= "Content-type: text/html; charset=iso-8859-1\r\n";

//dirección del remitente
$headers .= "From: SolucionWebX <[email protected]>\r\n";

mail($destinatario,$asunto,$cuerpo,$headers)
?>


Lo que este codigo me esta haciendo es imprimir en pantalla los datos, no los esta enviando, lo que quiero que aparesca mas o menos es algo asi (en mki correo):

Nombre: Anibal
Empresa: SolucionWebX
Pais: Panama
y asi conforme lo que se llene en el formulario. Les pongo la direccion para que lo vean: http://www.solucionwebx.todopy.com/contactenos.php

Les agradesco cualquier ayuda que me puedan brindar con esto
Gracias y saludos desde Panama.

ciao
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 06:02.