Foros del Web » Programando para Internet » PHP »

Como puedo hacer

Estas en el tema de Como puedo hacer en el foro de PHP en Foros del Web. Gente buen dia y mejor viernes, tengo tres consultas: Tengo un pagina de turismo y necesito que cuando se envie el formulario de consulta el ...
  #1 (permalink)  
Antiguo 24/06/2011, 07:49
 
Fecha de Ingreso: junio-2011
Ubicación: Buenos Aires
Mensajes: 91
Antigüedad: 12 años, 10 meses
Puntos: 1
Pregunta Problema con PHP

Gente buen dia y mejor viernes, tengo tres consultas:
Tengo un pagina de turismo y necesito que cuando se envie el formulario de consulta el mismo salga a mi cliente y una copia a mi.
El segundo Problema que tengo es que ya subi el formulario HTML y el enviar.PHP pero cuando quiero enviar el form (http://www.invitaargentina.com/Form) enviohuellas.htmlel mismo, en la web me sale el error "http 404"( http://www.invitaargentina.com/enviar), mi servidor me dice que la ruta es varuiable
La Tercer consulta es, como puedo achicar la pagina del formulario, ya que no la quiero completa.
Si cargo varios formularios, de distintos clientes, el enviar php que tengo me sirve para todos o debo armar un enviar.php por cada formulario

Muchas Gracias
  #2 (permalink)  
Antiguo 24/06/2011, 07:52
Avatar de iviamontes  
Fecha de Ingreso: enero-2011
Ubicación: $cubano->Arg->Mendoza
Mensajes: 1.184
Antigüedad: 13 años, 3 meses
Puntos: 209
Respuesta: Problema con PHP

1 - formulario de consulta el mismo salga a mi cliente y una copia a mi.
puedes hacer 2 funciones mail con el mismo dato
o hacer una con el from al cliente y a ti en BBC

vayamos por paso
  #3 (permalink)  
Antiguo 24/06/2011, 08:00
Avatar de chwc  
Fecha de Ingreso: julio-2008
Ubicación: Buenos Aires ! :D
Mensajes: 814
Antigüedad: 15 años, 8 meses
Puntos: 103
Respuesta: Problema con PHP

Parece que no tienes muchos conocimientos en PHP, con php puedes hasta poner el formulario y re ibirlo en la misma pagina
Debes emyender que cada <input> que tenga tu form con un name asignado, tu codigo PHP tendra un $_POST['nombredeinput']
saludos
  #4 (permalink)  
Antiguo 24/06/2011, 08:05
 
Fecha de Ingreso: junio-2011
Ubicación: Buenos Aires
Mensajes: 91
Antigüedad: 12 años, 10 meses
Puntos: 1
Respuesta: Problema con PHP

Muchas Gracias y es verdad es una de las primeras veces que estoy usando php, en todo caso ustedes tendrian algun codigo para pasarme?
mil gracias
  #5 (permalink)  
Antiguo 24/06/2011, 08:13
 
Fecha de Ingreso: junio-2011
Ubicación: Buenos Aires
Mensajes: 91
Antigüedad: 12 años, 10 meses
Puntos: 1
Respuesta: Problema con PHP

Este es el codigo del formulario que arme en html, y luego arme un PHP que se llama enviar.php pero cuando hago click en el boton de enviar me sale el error

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Contacto Huellas Andinas</title>
<style type="text/css">
body,td,th {
color: #000;
}
body {
background-color: #099;
}
</style>
</head>

<body bgcolor="#009999">
<blockquote>
<blockquote>
<blockquote>
<blockquote>
<blockquote>
<blockquote>
<blockquote>
<h4>Contactate con HOSTEL HUELLAS ANDINAS
</h4>
<form id="huellas" name="huellas" method="post" action="enviar">
<p>
<label for="textfield2">Nombre</label>
<input name="textfield" type="text" id="textfield2" size="30" />
</p>
<p>
<label for="textfield3">Apellido</label>
<input name="textfield2" type="text" id="textfield3" size="30" />

<label for="textfield5"><br />
Pais</label>
<input name="textfield4" type="text" id="textfield5" size="30" />
</p>
<p>
<label for="textfield4">Ciudad</label>
<input name="textfield3" type="text" id="textfield4" size="30" />
</p>
<p>
<label for="textfield6">Telefono de Contacto</label>
<input name="textfield5" type="text" id="textfield6" size="30" />

<label for="textfield7"><br />
Mail</label>
<input name="textfield6" type="text" id="textfield7" size="50" />

<label for="textarea"><br />
Su Consulta</label>
</p>
<p>
<textarea name="textarea" id="textarea" cols="50" rows="5"></textarea>
</p>
<p>

<input type="submit" name="button" id="button" value="Enviar" />
</p>
</form>
<p>&nbsp;</p>
</blockquote>
</blockquote>
</blockquote>
</blockquote>
</blockquote>
</blockquote>
</blockquote>
</body>
</html>
  #6 (permalink)  
Antiguo 24/06/2011, 08:23
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años
Puntos: 2534
Respuesta: Problema con PHP

En el action del formulario debes colocar el nombre del script a ejecutar, osea enviar.php pero tu solo has puesto enviar.
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #7 (permalink)  
Antiguo 24/06/2011, 08:44
 
Fecha de Ingreso: junio-2011
Ubicación: Buenos Aires
Mensajes: 91
Antigüedad: 12 años, 10 meses
Puntos: 1
Respuesta: Problema con PHP

Cita:
Iniciado por pateketrueke Ver Mensaje
En el action del formulario debes colocar el nombre del script a ejecutar, osea enviar.php pero tu solo has puesto enviar.
Okas y si armo un formulario para otro cliente, debo gestionar otro "send.php" o se puede usar este mismo para varios formularios?
  #8 (permalink)  
Antiguo 24/06/2011, 08:59
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años
Puntos: 2534
Respuesta: Problema con PHP

Si ambos scripts van a procesar lo mismo no tiene caso duplicar el trabajo, ¿o si?
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #9 (permalink)  
Antiguo 24/06/2011, 09:30
 
Fecha de Ingreso: junio-2011
Ubicación: Buenos Aires
Mensajes: 91
Antigüedad: 12 años, 10 meses
Puntos: 1
Pregunta Respuesta: Problema con PHP

Cita:
Iniciado por pateketrueke Ver Mensaje
Si ambos scripts van a procesar lo mismo no tiene caso duplicar el trabajo, ¿o si?
La verdad que no quiero duplicar el trabajo
por ejemplo los formularios html se llamarian asi

Formenviohuellas.html
Formenvioluna.html
Formenviocasanoruega.html
y muchos mas
no se como se puede cargar en mi archivo send.php que es el que absorve el scrip para el envio

Muchas Gracias por la ayuda
  #10 (permalink)  
Antiguo 24/06/2011, 09:40
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años
Puntos: 2534
Respuesta: Problema con PHP

Cita:
Iniciado por consultashangar Ver Mensaje
[...]
no se como se puede cargar en mi archivo send.php que es el que absorve el scrip para el envio
[...]
Eso si no lo entiendo, ¿puedes explicar a que te refieres?
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #11 (permalink)  
Antiguo 24/06/2011, 09:51
 
Fecha de Ingreso: junio-2011
Ubicación: Buenos Aires
Mensajes: 91
Antigüedad: 12 años, 10 meses
Puntos: 1
Cita:
Iniciado por pateketrueke Ver Mensaje
Eso si no lo entiendo, ¿puedes explicar a que te refieres?
es el archivo PHP que tengo, este lo que gestiona es el envio del formulario.html
es el que tien $_POST, no te puedo enviar ahora el script ya que estoy en el trabajo

gente como puedo hacer para que cada formulario de mis clientes sea enviado al mail de mi cliente y con copia a mi? ya esta armado el archivete

Última edición por GatorV; 30/06/2011 a las 15:33
  #12 (permalink)  
Antiguo 24/06/2011, 13:00
Avatar de iviamontes  
Fecha de Ingreso: enero-2011
Ubicación: $cubano->Arg->Mendoza
Mensajes: 1.184
Antigüedad: 13 años, 3 meses
Puntos: 209
Respuesta: Como puedo hacer

mail()
tiene para enviar x BBC
o hacer 2 mail() cuando proceses el archivo
  #13 (permalink)  
Antiguo 24/06/2011, 13:00
Avatar de Patriarka  
Fecha de Ingreso: enero-2011
Ubicación: Moreno, Buenos Aires, Argentina
Mensajes: 2.851
Antigüedad: 13 años, 2 meses
Puntos: 288
Respuesta: Como puedo hacer

mostralo!!!!
  #14 (permalink)  
Antiguo 24/06/2011, 13:01
 
Fecha de Ingreso: junio-2011
Ubicación: Buenos Aires
Mensajes: 91
Antigüedad: 12 años, 10 meses
Puntos: 1
Respuesta: Como puedo hacer

Cita:
Iniciado por iviamontes Ver Mensaje
mail()
tiene para enviar x BBC
o hacer 2 mail() cuando proceses el archivo
Perdona tendrias el codigo para tener una idea acertada

Gracias !!!!
  #15 (permalink)  
Antiguo 24/06/2011, 13:02
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años
Puntos: 2534
Respuesta: Como puedo hacer

consultashangar, te invito a leer las normas del foro.

Estás duplicando tu tema otra vez y eso no está bien visto por aquí.
http://www.forosdelweb.com/f18/probl...5/#post3904932

Así como te dijeron en el tema anterior, puede hacer un doble envío sin problema.

Adicionalmente podrías usar las cabeceras del correo para especificar una copia oculta o CC.

Por favor, consulta el manual:
http://php.net/email
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #16 (permalink)  
Antiguo 24/06/2011, 14:10
 
Fecha de Ingreso: junio-2011
Ubicación: Buenos Aires
Mensajes: 91
Antigüedad: 12 años, 10 meses
Puntos: 1
Respuesta: Como puedo hacer

Pido perdon no sabia esto, pero puedo consultar algo mas? que todavia no me contestaron
  #17 (permalink)  
Antiguo 24/06/2011, 14:13
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años
Puntos: 2534
Respuesta: Como puedo hacer

Puedes consultar siempre y cuando ya agotaste todos los medios posibles.

Si ya investigaste lo suficiente y no hallas algo útil, adelante.

Si solo lo vas a hacer por el simple hecho de hacerlo, pues...
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #18 (permalink)  
Antiguo 24/06/2011, 14:26
 
Fecha de Ingreso: junio-2011
Ubicación: Buenos Aires
Mensajes: 91
Antigüedad: 12 años, 10 meses
Puntos: 1
Respuesta: Como puedo hacer

Mi consulta es la siguiente tengo varios clientes en mi web que reciben consultas desde mi web a traves de links de mails, ahora yo deseo agregarles a cada link un formulario, pero no se si por cada Formulario que creo debo armar un archivo PHP o en uno solo puedo ir cargando los mail de mis clientes para quye cuando un visitante hace un click en enviar,automaticamente el PHP toma la direccion de mail de donde se hizo el click y le manda un mail a ese clilente

Formulario Html 1 Cliente 1 Send.PHP 1 Send PHP 1
Formulario Html 2 Cliente 2 Send.PHP 2 Send PHP 1
Formulario Html 3 Cliente 3 Send.PHP 3 Send PHP 1
Formulario Html 4 Cliente 4 Send.PHP 4 Send PHP 1
Formulario Html 5 Cliente 5 Send.PHP 5 Send PHP 1
Formulario Html 6 Cliente 6 Send.PHP 6 Send PHP 1
Formulario Html 7 Cliente 7 Send.PHP 7 Send PHP 1

Si debo cargar 1 archivo PHP por cada formulario HTML como lo Nombro a cada uno

Si es 1 solo archivo PHP para todos los Formulario HTML como gestiono el scrip
perdon si no soy claro pero soy muy nuevo en esto

Saludos
  #19 (permalink)  
Antiguo 24/06/2011, 14:26
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años
Puntos: 2534
Respuesta: Como puedo hacer

Respira, sal y da una vuelta.

Piensa claro lo que necesitas, si requieres dibújalo.

Entiende que el que no sabe lo que busca no entiende lo que encuentra.

Así que lo mejor para todos es que trates de ser mas claro, no improvises, no hay prisa.

Edito: a eso es a lo que me refería...

¿Todos los formularios son diferentes?

¿En que son diferentes?

¿Requieres que cada formulario se procese de manera distinta cada uno?

Si no es así, entonces no hay necesidad de duplicar código solo por el hecho de hacerlo.
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #20 (permalink)  
Antiguo 24/06/2011, 14:36
 
Fecha de Ingreso: junio-2011
Ubicación: Buenos Aires
Mensajes: 91
Antigüedad: 12 años, 10 meses
Puntos: 1
Respuesta: Como puedo hacer

Cita:
Iniciado por pateketrueke Ver Mensaje
Respira, sal y da una vuelta.

Piensa claro lo que necesitas, si requieres dibújalo.

Entiende que el que no sabe lo que busca no entiende lo que encuentra.

Así que lo mejor para todos es que trates de ser mas claro, no improvises, no hay prisa.

Edito: a eso es a lo que me refería...

¿Todos los formularios son diferentes?

¿En que son diferentes?

¿Requieres que cada formulario se procese de manera distinta cada uno?

Si no es así, entonces no hay necesidad de duplicar código solo por el hecho de hacerlo.
NO los formularios son todos iguales y con los mismos caracteres
el unico cambio que hay es la casilla de mail que es diferente en cada cliente

Genial muy groso lo suyo con gente como vos da gusto preguntar
Gracias por la paciencia
  #21 (permalink)  
Antiguo 27/06/2011, 14:15
Avatar de iviamontes  
Fecha de Ingreso: enero-2011
Ubicación: $cubano->Arg->Mendoza
Mensajes: 1.184
Antigüedad: 13 años, 3 meses
Puntos: 209
Respuesta: Como puedo hacer

mira esto es un ejemplo de mail con cabeceras BB y BBC



$denombre="Tu sitio";
$deemail= $mailAdmin; //"[email protected]";
$sfrom = $mailAdmin; //"[email protected]"; //cuenta que envia
$sBCC="correo oculto"; //copia oculta
$sCC="correo copia"; //copia de correo

$sdestinatario=$email; //cuenta destino
$ssubject="asunto"; //subject

$shtml="texto html, si son imagenes, ponle direccion absoluta";


$encabezados = "MIME-Version: 1.0\n";
$encabezados .= "Content-type: text/html; charset=iso-8859-1\n";
$encabezados .= "From: $denombre <$deemail>\n";
$encabezados .= "X-Sender: <$sfrom>\n";
//$encabezados .= "BCC: <$sBCC>\n"; //aqui fijo el BCC
//$encabezados .= "CC: <$sCC>\n"; //aqui fijo el CC
$encabezados .= "X-Mailer: PHP\n";
$encabezados .= "X-Priority: 1\n"; // fijo prioridad
$encabezados .= "Return-Path: <$sfrom>\n";

@mail($sdestinatario, $ssubject, $shtml, $encabezados);
  #22 (permalink)  
Antiguo 27/06/2011, 14:21
 
Fecha de Ingreso: junio-2011
Ubicación: Buenos Aires
Mensajes: 91
Antigüedad: 12 años, 10 meses
Puntos: 1
Respuesta: Como puedo hacer

Ok Mucha Gracias iviamontes esto me va a poder hacer que si un visitante hace click en Form3 el mail vaya al cliente 3 y no al 1 como me esta sucediendo

Última edición por consultashangar; 27/06/2011 a las 14:31
  #23 (permalink)  
Antiguo 28/06/2011, 14:19
 
Fecha de Ingreso: junio-2011
Ubicación: Buenos Aires
Mensajes: 91
Antigüedad: 12 años, 10 meses
Puntos: 1
Respuesta: Como puedo hacer

por ultimo y no milesto mas lo juro!!! me pide que cambie el recipient , que mongo pongo, como veran recien estoy entendiendo esto

if(!isset($_REQUEST['recipient']) || $_REQUEST['recipient']=='')

Gracias a la persona que se solidariza con mi poco conocimientos
  #24 (permalink)  
Antiguo 28/06/2011, 14:31
Avatar de Patriarka  
Fecha de Ingreso: enero-2011
Ubicación: Moreno, Buenos Aires, Argentina
Mensajes: 2.851
Antigüedad: 13 años, 2 meses
Puntos: 288
Respuesta: Como puedo hacer

no entiendo nada!
explicalo simple
  #25 (permalink)  
Antiguo 28/06/2011, 14:37
 
Fecha de Ingreso: junio-2011
Ubicación: Buenos Aires
Mensajes: 91
Antigüedad: 12 años, 10 meses
Puntos: 1
Respuesta: Como puedo hacer

Te paso todo el Scrip y me dice que el campo a cambiar obligatorio es en recipient que pongo???
solo hay un campo "obligatorio" que debe configurar en su formulario para que el script funcione correctamente. Este es el campo "recipient". El resto de los parámetros son opcionales, puede utilizarlos según sus necesidades.



<?php

//
// WIROOS Secure Form Mail v1.0 - Copyright 2008 - WIROOS Global Solutions
// Author: Alberto Nakayama
//

// Configuracion //////////////////////////////////////////////////////////////

$dominio_permitido = str_replace('www.','', $_SERVER['SERVER_NAME']);

// Validacion de argumentos obligatorios //////////////////////////////////////

if(!isset($_REQUEST['recipient']) || $_REQUEST['Recipient']=='') die('Falta el argumento "recipient" (destino)');
if(!isset($_REQUEST['email']) || $_REQUEST['email']=='') die('Falta el argumento "email" (remitente)');
if(!isset($_REQUEST['redirect']) || $_REQUEST['redirect']=='') die('Falta el argumento "redirect" (redirecci&oacute;n luego de enviar el mensaje)');

if(strpos($_REQUEST['recipient'], '<')!==false) die('Argumento recipient no seguro. &Eacute;ste no puede contener caracteres &lt; o &gt;.');
if(strpos($_REQUEST['recipient'], '>')!==false) die('Argumento recipient no seguro. &Eacute;ste no puede contener caracteres &lt; o &gt;.');
if(strpos($_REQUEST['recipient'], "\n")!==false) die('Argumento recipient no seguro. &Eacute;ste debe ser una sola l&iacute;nea.');
if(strpos($_REQUEST['recipient'], "\r")!==false) die('Argumento recipient no seguro. &Eacute;ste debe ser una sola l&iacute;nea.');

$subject = isset($_REQUEST['subject'])? $_REQUEST['subject'] : 'WIROOS Formmail v1.0';

if(strpos($subject, '<')!==false) die('Argumento subject no seguro. &Eacute;ste no puede contener caracteres &lt; o &gt;.');
if(strpos($subject, '>')!==false) die('Argumento subject no seguro. &Eacute;ste no puede contener caracteres &lt; o &gt;.');
if(strpos($subject, "\n")!==false) die('Argumento subject no seguro. &Eacute;ste debe ser una sola l&iacute;nea.');
if(strpos($subject, "\r")!==false) die('Argumento subject no seguro. &Eacute;ste debe ser una sola l&iacute;nea.');

if(isset($_REQUEST['realname']) && $_REQUEST['realname']!='')
{
if(strpos($_REQUEST['realname'], '<')!==false) die('Argumento realname no seguro. &Eacute;ste no puede contener caracteres &lt; o &gt;.');
if(strpos($_REQUEST['realname'], '>')!==false) die('Argumento realname no seguro. &Eacute;ste no puede contener caracteres &lt; o &gt;.');
if(strpos($_REQUEST['realname'], "\n")!==false) die('Argumento realname no seguro. &Eacute;ste debe ser una sola l&iacute;nea.');
if(strpos($_REQUEST['realname'], "\r")!==false) die('Argumento realname no seguro. &Eacute;ste debe ser una sola l&iacute;nea.');
}

// Validacion de recipient ////////////////////////////////////////////////////

// Separo las direcciones por coma
$destinos = explode(',', $_REQUEST['recipient']);

// Borro los espacios del principio y el final de cada direccion, si los hay
for($i=0; $i<sizeof($destinos); $i++)
$destinos[$i] = trim($destinos[$i]);

// Verifico que cada direccion destino sea del dominio permitido
for($i=0; $i<sizeof($destinos); $i++)
{
// Busco la posicion del arroba
$arroba_pos = strpos($destinos[$i], '@');

// Si no tiene arroba, se la agrego
if($arroba_pos === false)
{
$destinos[$i] .= '@' . $dominio_permitido;
continue;
}
// Si tiene arroba, verifico que el dominio corresponda a dominio_permitido
else
{
// Si el dominio no es $dominio_permitido, muestro un mensaje de error
if(substr($destinos[$i], $arroba_pos+1) != $dominio_permitido)
die($destinos[$i] . ' no es una direcci&oacute;n destino permitida.');
}
}

// Composicion del mensaje ////////////////////////////////////////////////////

$mensaje = "Enviado por el IP (" . $_SERVER['REMOTE_ADDR'] . ")\n\n";

foreach($_REQUEST as $key => $value)
{
if($key!='recipient' && $key!='email' && $key!='subject' && $key!='redirect')
$mensaje .= $key . ": " . stripslashes($_REQUEST[$key]) . "\n";
}

// Envio del mensaje //////////////////////////////////////////////////////////

if(isset($_REQUEST['realname']) && $_REQUEST['realname']!='')
$from = 'From: ' . $_REQUEST['realname'] . '<' . $_REQUEST['email'] . '>';
else
$from = 'From: ' . $_REQUEST['email'];

mail(implode(',', $destinos), $subject, $mensaje, $from);

header('Location: ' . $_REQUEST['redirect']);


?>
  #26 (permalink)  
Antiguo 28/06/2011, 17:54
 
Fecha de Ingreso: junio-2011
Ubicación: Buenos Aires
Mensajes: 91
Antigüedad: 12 años, 10 meses
Puntos: 1
Respuesta: Como puedo hacer

alguien sabe que debo poner en 'recipient' mi mail o mi dominio o el nombre del formulario aqui

if(!isset($_REQUEST['recipient']) || $_REQUEST['Recipient']=='') die('Falta el argumento "recipient" (destino)');

Gracias

Última edición por consultashangar; 30/06/2011 a las 06:56
  #27 (permalink)  
Antiguo 30/06/2011, 14:09
 
Fecha de Ingreso: junio-2011
Ubicación: Buenos Aires
Mensajes: 91
Antigüedad: 12 años, 10 meses
Puntos: 1
Respuesta: Como puedo hacer

Amigos nadie me puede ayudar a decifrar que debo poner en Recipient

<?php

//
// WIROOS Secure Form Mail v1.0 - Copyright 2008 - WIROOS Global Solutions
// Author: Alberto Nakayama
//

// Configuracion //////////////////////////////////////////////////////////////

$dominio_permitido = str_replace('www.','', $_SERVER['SERVER_NAME']);

// Validacion de argumentos obligatorios //////////////////////////////////////

if(!isset($_REQUEST['recipient']) || $_REQUEST['Recipient']=='') die('Falta el argumento "recipient" (destino)');
if(!isset($_REQUEST['email']) || $_REQUEST['email']=='') die('Falta el argumento "email" (remitente)');
if(!isset($_REQUEST['redirect']) || $_REQUEST['redirect']=='') die('Falta el argumento "redirect" (redirecci&oacute;n luego de enviar el mensaje)');

if(strpos($_REQUEST['recipient'], '<')!==false) die('Argumento recipient no seguro. &Eacute;ste no puede contener caracteres &lt; o &gt;.');
if(strpos($_REQUEST['recipient'], '>')!==false) die('Argumento recipient no seguro. &Eacute;ste no puede contener caracteres &lt; o &gt;.');
if(strpos($_REQUEST['recipient'], "\n")!==false) die('Argumento recipient no seguro. &Eacute;ste debe ser una sola l&iacute;nea.');
if(strpos($_REQUEST['recipient'], "\r")!==false) die('Argumento recipient no seguro. &Eacute;ste debe ser una sola l&iacute;nea.');

$subject = isset($_REQUEST['subject'])? $_REQUEST['subject'] : 'WIROOS Formmail v1.0';

if(strpos($subject, '<')!==false) die('Argumento subject no seguro. &Eacute;ste no puede contener caracteres &lt; o &gt;.');
if(strpos($subject, '>')!==false) die('Argumento subject no seguro. &Eacute;ste no puede contener caracteres &lt; o &gt;.');
if(strpos($subject, "\n")!==false) die('Argumento subject no seguro. &Eacute;ste debe ser una sola l&iacute;nea.');
if(strpos($subject, "\r")!==false) die('Argumento subject no seguro. &Eacute;ste debe ser una sola l&iacute;nea.');

if(isset($_REQUEST['realname']) && $_REQUEST['realname']!='')
{
if(strpos($_REQUEST['realname'], '<')!==false) die('Argumento realname no seguro. &Eacute;ste no puede contener caracteres &lt; o &gt;.');
if(strpos($_REQUEST['realname'], '>')!==false) die('Argumento realname no seguro. &Eacute;ste no puede contener caracteres &lt; o &gt;.');
if(strpos($_REQUEST['realname'], "\n")!==false) die('Argumento realname no seguro. &Eacute;ste debe ser una sola l&iacute;nea.');
if(strpos($_REQUEST['realname'], "\r")!==false) die('Argumento realname no seguro. &Eacute;ste debe ser una sola l&iacute;nea.');
}

// Validacion de recipient ////////////////////////////////////////////////////

// Separo las direcciones por coma
$destinos = explode(',', $_REQUEST['recipient']);

// Borro los espacios del principio y el final de cada direccion, si los hay
for($i=0; $i<sizeof($destinos); $i++)
$destinos[$i] = trim($destinos[$i]);

// Verifico que cada direccion destino sea del dominio permitido
for($i=0; $i<sizeof($destinos); $i++)
{
// Busco la posicion del arroba
$arroba_pos = strpos($destinos[$i], '@');

// Si no tiene arroba, se la agrego
if($arroba_pos === false)
{
$destinos[$i] .= '@' . $dominio_permitido;
continue;
}
// Si tiene arroba, verifico que el dominio corresponda a dominio_permitido
else
{
// Si el dominio no es $dominio_permitido, muestro un mensaje de error
if(substr($destinos[$i], $arroba_pos+1) != $dominio_permitido)
die($destinos[$i] . ' no es una direcci&oacute;n destino permitida.');
}
}

// Composicion del mensaje ////////////////////////////////////////////////////

$mensaje = "Enviado por el IP (" . $_SERVER['REMOTE_ADDR'] . ")\n\n";

foreach($_REQUEST as $key => $value)
{
if($key!='recipient' && $key!='email' && $key!='subject' && $key!='redirect')
$mensaje .= $key . ": " . stripslashes($_REQUEST[$key]) . "\n";
}

// Envio del mensaje //////////////////////////////////////////////////////////

if(isset($_REQUEST['realname']) && $_REQUEST['realname']!='')
$from = 'From: ' . $_REQUEST['realname'] . '<' . $_REQUEST['email'] . '>';
else
$from = 'From: ' . $_REQUEST['email'];

mail(implode(',', $destinos), $subject, $mensaje, $from);

header('Location: ' . $_REQUEST['redirect']);
  #28 (permalink)  
Antiguo 30/06/2011, 14:18
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años
Puntos: 2534
Respuesta: Como puedo hacer

Es curioso que ni leyendo el código que viene comentado en español sepas lo que es.
Cita:
if(!isset($_REQUEST['recipient']) || $_REQUEST['Recipient']=='') die('Falta el argumento "recipient" (destino)');
Además sigues duplicando el mismo mensaje una y otra vez, te invito a leer las normas.
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #29 (permalink)  
Antiguo 30/06/2011, 14:38
 
Fecha de Ingreso: junio-2011
Ubicación: Buenos Aires
Mensajes: 91
Antigüedad: 12 años, 10 meses
Puntos: 1
pero al no tener conocimineto, piensoo que alguine puede ayudar,

es lño mismo que vos que quizas no sabes algo y lo preguntas hasta que alguien te lo exolica y te lo nuestra por una vez, despues lo entiendes y ya lo aplicas o es que eres un super dios que nacio sabienrdo todo

Última edición por GatorV; 30/06/2011 a las 15:36
  #30 (permalink)  
Antiguo 30/06/2011, 15:25
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años
Puntos: 2534
Respuesta: Como puedo hacer

Sigue siendo curiosa tu actuación.

He resaltado que del código, lo que es el recipiente dice destino.

Si estas tratando de enviar un correo, supongo que el destino debería ser dicho correo.
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.

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

SíEste tema le ha gustado a 1 personas




La zona horaria es GMT -6. Ahora son las 04:39.