Formulario enviar imagen y casilla verificación

  • Autor Autor migaso
  • Fecha de inicio Fecha de inicio
M

migaso

Beta
¡Usuario con pocos negocios! ¡Utiliza siempre saldo de Forobeta!
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" );
?>
 
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).
 
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í.
 
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.
 
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 ¿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')."";
 
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.
 
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.
 
Atrás
Arriba