Avisos
Vaciar todo

Breezing forms campo adjuntar fichero en formulario  

Página 1 / 3
 
Aurelio
 Aurelio
Reputable Member

Hola, ¿podríais echarme una mano de cómo crear un campo que sea adjuntar un fichero, ya sea un pdf, un word y cosas por el estilo en la versión que ya trae vuestro pack encelado profesional?
He visto foros vuestros pero ninguno ayuda sobre la versión que tenéis actualmente en vuestros packs y me pierdo.

URL del sitio: Contenido solo visible a usuarios registrados

Citar
Respondido : 19/07/2016 9:13 pm
Aurelio
 Aurelio
Reputable Member

Vale, ya tengo el campo de enviar ficheros adjuntos de mi formulario de contacto, pero no consigo que me envíe los archivos.

¿Podéis ayudarme?

ResponderCitar
Respondido : 19/07/2016 9:54 pm

Cursos Gratuitos WordPress

Aurelio
 Aurelio
Reputable Member

De otro hilo vuestro he pegado el código para enviar piezas, pero a mí no se me muestra el link. De todas formas si hubiera una manera de que lleguen los adjuntos al correo es lo que realmente quiero.

ResponderCitar
Respondido : 19/07/2016 10:15 pm
Jhon
 Jhon
Soporte CMS Webempresa Moderator

Hola

Entiendo que al menos si se almacen el adjunto en el registro de BF

Prueba hacerlo como se indica en el siguiente video:
https://vimeo.com/7548200

Saludos.

ResponderCitar
Respondido : 19/07/2016 11:47 pm

optimiza-automaticamente-todas-las-imagenes-de-tu-wordpress

Aurelio
 Aurelio
Reputable Member

Hola Jhone, ese vídeo es el que seguí y no me funciona. ¿Cómo compruebo en la base de datos dónde se almacena si se ha enviado el archivo adjunto?

Por otro lado cuando envío el formulario, me aparece también que me envía el texto de "he leído la política de privacidad". Eso para mi entender no debería de mandarlo a ver si me ayudáis con estas dos cosas.

ResponderCitar
Respondido : 20/07/2016 8:21 am
Pepe
 Pepe
Soporte CMS Webempresa Admin

Hola Aurelio.

Para que en el correo con los datos del formulario llegue un enlace con descarga del archivo subido, tendrás que aplicar algunos cambios en el formulario.

- Edita el formulario donde tienes la opción de subida.
- Pulsa en el botón Editar Formulario de la parte superior derecha y, a continuación, en la pestaña Enviar Piezas. En el apartado Final del Envío selecciona la opción Personalizado y en la caja que se muestra debajo pon el siguiente código:

// declare globals used in this piece
global $mailfrom, $fromname, $ff_config, $ff_mospath;
 
$ruta = $ff_config->uploads;
 
// create the subject string
$subject = "Formulario de Pedido recibido desde la web";
 
// create the message
$body = "Formulario: " . $this->formrow->title.nl().nl();
$body .= "Fecha de envío: " . $this->submitted.nl().nl();
if (count($this->maildata)) foreach ($this->maildata as $data) {
	if ($data[_FF_DATA_TYPE] == 'File Upload') {
		$adjunto = $data[_FF_DATA_VALUE];
		//Para que funcione el link cuando hay espacios
		$adjunto = str_replace(" ","%20",$adjunto);
 
		$body .= "Fichero adjunto: ".JURI::base()."components/com_breezingforms/uploads".str_replace(JPATH_SITE."/components/com_breezingforms/uploads", "", $adjunto).nl();
    } else {
		$body .= $data[_FF_DATA_TITLE].": ".$data[_FF_DATA_VALUE].nl();
	}
}
 
//File Upload
if ($this->formrow->emailntf==2)
	$recipient = $this->formrow->emailadr;
else
	$recipient = $ff_config->emailadr;
 
// send the mail
$this->sendMail(
    $mailfrom,                // email addr of submitter (1)
    $fromname,   // name of submitter (1)
    $recipient,                                // email of recipient (2) (use array for multiple addresses)
    $subject,                           // subject of the mail (3)
    $body                            // body of the mail (3));
);

Comprueba si recibes un mail con el enlace de descarga.

Sobre el tema de la política de privacidad, así de cabeza creo que no se puede, tendría que ver con un poco de tiempo el código para poder ver donde se origina.

Un saludo

ResponderCitar
Respondido : 20/07/2016 10:36 am

wpdoctor-revisa-la-salud-de-tu-wordpress

Aurelio
 Aurelio
Reputable Member

Hola Pepe, vamos por partes porque cuando decís editar el formulario y pulsar el botón, yo en la versión que estoy utilizando que es la de vuestro pack no encuentro eso.
Tengo agregado el código. Adjunto imagen>>>> captura.jpg
Tengo un problema y es que cuando me envía los formularios me lo manda doble, también leí que desactivando emails de administrador, sólo debería llegarte uno, el del código de enviar pieza si no me equivoco. Adjunto imagen>>>captura2.jpg
El resultado del correo que me llega lo adjunto en imagen>>>captura3.jpg

Adjunto captura de pantalla y me decís si está correcto.

Contenido solo visible a usuarios registrados

ResponderCitar
Respondido : 20/07/2016 11:36 am
Pepe
 Pepe
Soporte CMS Webempresa Admin

Hola Aurelio.

ok, elimina lo que te comente anteriormente.

- En las propiedades del formulario, asegúrate de que la opción "Notificación por Email" esta ACTIVADA.

- Copia el siguiente código en un editor de código o archivo txt.

$this->execPieceByName('ff_InitLib');
$from = ff_getSubmit('email');
$fromname = ff_getSubmit('Name');
$subject = 'Asunto del correo electrónico'; // Escriba aquí el asunto que mostrará el email
$recipient = 'micorreo@email.com'; // Escriba aquí su correo electrónico de administrador
$body = '';
        
      if (count($this->maildata)){
          foreach ($this->maildata as $data){
 
                $testEx = explode("n", trim($data[_FF_DATA_VALUE]));
                $cntTestEx = count($testEx);
                if($cntTestEx > 1){
                      for($ex = 0; $ex maildata as $data) {
 
  if( $data[_FF_DATA_NAME] == 'upload' )
{
   $body .= $data[_FF_DATA_TITLE].':  http://www.tudominio.com/path/to/uploads /' . basename($data[_FF_DATA_VALUE]);
} else {
   $body .= $data[_FF_DATA_TITLE].": ".$data[_FF_DATA_VALUE].nl() . "rn";
 
  }
}
 
$this->sendMail($from, $fromname, $recipient, $subject, $body, $attachment);  // Línea que ejecuta el envío del email.

Debes cambiar el siguiente texto, concretamente el situado dentro de las comillas, poniendo el asunto del email y la dirección del administrador respectivamente.

$subject = 'Asunto del email'; // Asunto del email
$recipient = 'mi_correo_admin@email.com'; // Correo electrónico del administrador

Cambia la ruta de acceso para que apunte a tu carpeta de subida de datos en:

$body .= $data[_FF_DATA_TITLE].':  http://www.tudominio.com/path/to/uploads /' . basename($data[_FF_DATA_VALUE]);

Una vez hayas editado el código, tienes que dirigirte a las propiedades del formulario > pestaña Avanzado y haz clic sobre el enlace "Más opciones".

Menú ENVIAR PIEZAS > sección Final del Envío y clic sobre Tipo: personalizado. Esto abrirá un área de texto donde deberás pegar el código anteriormente editado y guárdalo.

Guarda también el formulario.

Prueba si con esto te llega el enlace en el correo.

Un saludo

ResponderCitar
Respondido : 20/07/2016 2:34 pm

Gestor de Contraseñas - VPN Conexión Segura - Gestor 2FA (Segundo Factor de Autenticación

Aurelio
 Aurelio
Reputable Member

Hola Pepe, he hecho todo lo que me dices pero no me manda ningún enlace al correo. Me siguen llegando dos correos repetidos. Si te sirve de algo he comprobado que me llega a la carpeta uploads con el código anterior un par de archivos pero con un "churro de caracteres detrás que para poder leerlo tengo que borrar caracteres".

ResponderCitar
Respondido : 20/07/2016 7:11 pm
Aurelio
 Aurelio
Reputable Member

Hola Pepe, el código funciona porque me manda envía el archivo a la carpeta pero con un texto muy largo. Algo hemos avanzado. Ya sólo me manda un correo pero porque he tenido que desactivar en la configuración global de breezingforms el mail de notificación para que sólo me coja el que viene por enviar piezas. Lo único que no me funciona es lo de enviarme el link.

A ver si me ayudáis con eso que me queda.
En el vídeo que me envió Jhon, lo seguí y en el correo que pone de ejemplo si aparecen los ficheros adjuntos sin necesidad de programar nada, pero bueno, a lo que nos atañe, el link no me aparece pero sí me manda el archivo a la carpeta a ver si podemos seguir solucionando.

Os pongo una captura de cómo me llega el archivo con un churro muy largo que me pone en el nombre de los archivos adjuntos.

Gracias.

ResponderCitar
Respondido : 20/07/2016 8:38 pm

Pepe
 Pepe
Soporte CMS Webempresa Admin

Hola Aurelio.

ok, puedes adjuntarme el correo que te llega para que pueda verlo?

Un saludo

ResponderCitar
Respondido : 21/07/2016 9:36 am
Aurelio
 Aurelio
Reputable Member

Te mando captura de lo que me llega al correo.
Los datos los he tapado porque son reales en la prueba.

ResponderCitar
Respondido : 22/07/2016 7:36 pm

Cursos Gratuitos WordPress

Jhon
 Jhon
Soporte CMS Webempresa Moderator

Hola

El nombre del archivo que envìas en tu captura de pantalla es correcto es un hash unico que usa BF para no repetir nombres, no debes complicarte con esto.

Teoricamente si que deberìa enviarte el adjunto junto con el correo.

Lo que te sugiero es crear un nuevo formulario de prueba, publicarlo en tu sitio y verificar si te envia con adjuntos, es posible que hayas obviado alguna configuraciòn.

Saludos.

ResponderCitar
Respondido : 22/07/2016 11:13 pm
Aurelio
 Aurelio
Reputable Member

Me envía el archivo pero no me envía los adjuntos probaré mañana a ver que pasa con un formulario nuevo y os cuento pero creo que la configuración está bien.

ResponderCitar
Respondido : 23/07/2016 2:16 am

optimiza-automaticamente-todas-las-imagenes-de-tu-wordpress

Aurelio
 Aurelio
Reputable Member

Perdonad que hace tiempo no escribo, pero sigue igual, me envía el archivo pero al correo no me llega el enlace, he probado todo lo que me habéis puesto en el hilo y sigue sin funcionar.

A ver si me podéis ayudar porque no sé qué hacer y llevo tiempecillo con esto.

Gracias.

ResponderCitar
Respondido : 28/09/2016 8:53 am
Página 1 / 3