Formulario enviar imagen y casilla verificación

migaso Seguir

Beta
¡Usuario con pocos negocios! ¡Utiliza siempre saldo de Forobeta!
Desde
13 Nov 2012
Mensajes
138
Hola, tengo un formulario con datos como nombre, dirección, agregar imagen y marcar casilla de verificación para aceptar la ley de privacidad.
Lo que pasa es que no me llega a mi correo la imagen ni algún dato de haber marcado la casilla de verificación.
El error es algo del código, ya que soy nuevo en esto y no sé que hay que poner para recibir estos 2 datos ó si sólo se puede recibir en una base de datos.
P.d.- ($acepto se refiere a la casilla de verificación).

<?php
$mail="info@abcde.com";
$nombreempresa = $_POST["nombre-empresa"];
$direccion = $_POST["direccion"];
$imagen = $_POST["imagen"];
$acepto = $_POST["acepto"];
$thank="../gracias.html";

$message = "
nombre-empresa:".$nombreempresa."
direccion:".$direccion."
imagen:".$imagen."
acepto:".$acepto."";
if (mail ($mail,"anuncios",$message)) Header ("location: $thank" );
?>
 

David077

Beta
¡Usuario con pocos negocios! ¡Utiliza siempre saldo de Forobeta!
Desde
11 Abr 2014
Mensajes
138
Por favor, ten en cuenta 📝 que si deseas hacer un trato 🤝 con este usuario, está baneado 🔒.
Mmm... Si me mandas una captura o el código HTML, me sería más fácil ayudarte.

El código lo veo bien, tal vez a la función de enviar email le falta los "headers".

Intente hacer esto: Reemplaza:

PHP:
if (mail ($mail,"anuncios",$message)) Header ("location: $thank" );

por

PHP:
$sender = "TuEmpresa <".$mail.">";
$email_headers = "MIME-Version: 1.0"."\n";
$email_headers .= "Content-type: text/html; charset=utf-8"."\n";
$email_headers .= "Content-Transfer-Encoding: 8bit"."\n";
$email_headers .= "From: $sender"."\n";
$email_headers .= "Return-Path: $sender"."\n";
$email_headers .= "Reply-To: $sender\n";
if (mail ($mail,"anuncios",$message,$email_headers)) Header ("location: $thank" );

Sino te funciona creo que el problema vendría a ser el hosting que usas, tal vez no tenga servidor de correo (no estoy seguro como se llama).
 

migaso

Beta
¡Usuario con pocos negocios! ¡Utiliza siempre saldo de Forobeta!
Desde
13 Nov 2012
Mensajes
138
Gracias por contestar.
Me parece que lo que me faltaba es que la ruta para la imagen hay que poner más código como la carpeta donde me va a guardar las imágenes y varias cosas así.
 

David077

Beta
¡Usuario con pocos negocios! ¡Utiliza siempre saldo de Forobeta!
Desde
11 Abr 2014
Mensajes
138
Por favor, ten en cuenta 📝 que si deseas hacer un trato 🤝 con este usuario, está baneado 🔒.
Gracias por contestar.
Me parece que lo que me faltaba es que la ruta para la imagen hay que poner más código como la carpeta donde me va a guardar las imágenes y varias cosas así.
la ruta de la imagen no creo que sea el problema.
 

migaso

Beta
¡Usuario con pocos negocios! ¡Utiliza siempre saldo de Forobeta!
Desde
13 Nov 2012
Mensajes
138
Los headers ¿para que sirven?
Los datos me llegan al correo con el código que puse, pero la imagen y la marca de haber marcado la casilla de verificación aparecen vacíos. Por eso decía que me faltaba algo en el código, ya que una foto no es un dato igual a texto.
Algo así:
nombre-empresa: Manut Tour
dirección: C// Sol
imagen:
acepto:
 

David077

Beta
¡Usuario con pocos negocios! ¡Utiliza siempre saldo de Forobeta!
Desde
11 Abr 2014
Mensajes
138
Por favor, ten en cuenta 📝 que si deseas hacer un trato 🤝 con este usuario, está baneado 🔒.
Los headers ¿para que sirven?
Los datos me llegan al correo con el código que puse, pero la imagen y la marca de haber marcado la casilla de verificación aparecen vacíos. Por eso decía que me faltaba algo en el código, ya que una foto no es un dato igual a texto.
Algo así:
nombre-empresa: Manut Tour
dirección: C// Sol
imagen:
acepto:

Los headers no sé si sean necesarios, pero creo que es conveniente tenerlos.

Tengo una pregunta, el input de imagen es de "Seleccionar Archivo" o de "Ingresa la URL de la imagen"?

y para el input de acepto es solo reemplazar:

PHP:
acepto:".$acepto."";

por esto:

PHP:
acepto:".(empty($acepto) ? 'No' : 'Si')."";
 

migaso

Beta
¡Usuario con pocos negocios! ¡Utiliza siempre saldo de Forobeta!
Desde
13 Nov 2012
Mensajes
138
La imagen es de "Seleccionar archivo".
"Acepto" es una casilla de verificación que hay que marcar ya que dice que "he leído y acepto la política de privacidad" y la he puesto que sea obligatoria marcar para poder enviar el formulario. Lo que no sé si se puede poner que sea obligatoria o según la ley hay que dar opción a no marcarla, pero me suena de ver otros formularios a que la mayoría te obligan a marcar la casilla de política de privacidad.
 

David077

Beta
¡Usuario con pocos negocios! ¡Utiliza siempre saldo de Forobeta!
Desde
11 Abr 2014
Mensajes
138
Por favor, ten en cuenta 📝 que si deseas hacer un trato 🤝 con este usuario, está baneado 🔒.
La imagen es de "Seleccionar archivo".
"Acepto" es una casilla de verificación que hay que marcar ya que dice que "he leído y acepto la política de privacidad" y la he puesto que sea obligatoria marcar para poder enviar el formulario. Lo que no sé si se puede poner que sea obligatoria o según la ley hay que dar opción a no marcarla, pero me suena de ver otros formularios a que la mayoría te obligan a marcar la casilla de política de privacidad.
Mmm... en los formularios que he programado, al final siempre pongo: "Al hacer click en enviar Aceptas los términos de uso". Pero eso es personalizable como cada quien lo quiera hacer.

Debajo de:

PHP:
$thank="../gracias.html";

puedes poner un IF como este:

PHP:
if(empty($acepto)) die('Debes aceptar los t&eacute;rminos de uso para continuar');

En cuanto a los datos de la imagen voy a ver si te puedo ayudar.
 
Arriba