Hogar / Seguridad / La forma más sencilla de enviar datos por correo electrónico utilizando HTML y PHP. Cómo enviarse una página web por correo electrónico con solo un clic Enviar una página por correo electrónico

La forma más sencilla de enviar datos por correo electrónico utilizando HTML y PHP. Cómo enviarse una página web por correo electrónico con solo un clic Enviar una página por correo electrónico

Hay muchas formas de "cortar" una página web.

Pero Pocket requiere la aplicación y una cuenta de Pocket. Esto significa que necesita instalar otra aplicación, iniciar sesión en el servicio, sincronizar, etc. Sería bueno si pudiera hacer lo mismo usando su buzón.

Esa es la idea detrás de EmailThis, que es exactamente lo que sugiere su nombre. Con un clic, este bookmarklet (o extensión,
si es usuario de Chrome) entregará la página web actual a su buzón. Y, al igual que Pocket, este servicio elimina toda la publicidad y no es amigable para dispositivos móviles formateando, dejándote solo texto e imágenes fáciles de leer. (También proporciona el enlace original a continuación si desea regresar al sitio).

Una vez que haya completado la configuración inicial (en inglés), usar el correo electrónico es literalmente hacer clic en un botón: haga clic en el marcador (o icono de extensión) cuando desee enviarse la página que está viendo actualmente.

Curiosamente, el marcador también es compatible con los navegadores de Android e iOS, pero utilizarlo requiere un poco más de esfuerzo. Los usuarios de Android deben ingresar "enviar esto por correo electrónico" en la barra de direcciones, mientras que los usuarios de iOS deben abrir sus marcadores guardados y tocar "Enviar esto por correo electrónico".

Por supuesto, en muchos navegadores móviles Hay una opción de "leer más tarde" que funciona muy bien. Pero si desea que la página llegue a su bandeja de entrada, esta es la mejor manera.

Desafortunadamente, EmailThis no es compatible con Borde de Microsoft, que no admite marcadores. Si encuentra una solución alternativa, asegúrese de hacérmelo saber en los comentarios.

Probé la herramienta con varias páginas web. Funcionó muy bien con la mayoría de ellos. Noté que algunas de las imágenes incrustadas no estaban "cortadas", tal vez porque estaban alojadas en un tercero. Pero, en general, encontré que EmailThis es una forma rápida y sencilla de enviar cualquier página web a su bandeja de entrada.

Y me gusta más esta opción que las opciones de "leer más tarde" porque mi bandeja de entrada duplica la funcionalidad de la lista de tareas pendientes. De esta forma, el contenido web que considero importante no queda olvidado ni pasado por alto.

Nota del editor: Este artículo se publicó originalmente el 25 de febrero de 2014 y se actualizó hoy.

¿Cuáles son algunas formas de enviar una página web por correo electrónico?
De diversas formas, según lo que quiso decir el autor de la pregunta.

Por ejemplo, si tiene un programa de captura de pantalla, puede tomar una captura de pantalla abrir pagina y envíalo como imagen a la persona que necesites por correo electrónico. En este caso, la imagen estará muerta y los enlaces no funcionarán.

Sospecho que una respuesta más correcta sería guardar la página utilizando métodos estándar. Haga clic en el menú "archivo" en el navegador, luego "guardar como" y guarde la página web completa. Si la persona a quien se envía esta página tiene acceso a Internet podrá seguir los enlaces de la página, estarán funcionando.

En el primer caso, será más fácil abrir la página si se selecciona un formato de imagen común: bmp, jpg, gif. En el segundo caso, puede haber problemas al mostrar una página guardada en un navegador pero abierta en otro, puede que no se muestre correctamente o no se abra en absoluto;

Ambos casos están diseñados para su conservación en un archivo, para enviarlos a una persona que no tiene acceso constante a Internet. En este caso, es mejor adjuntarlo a la carta.

Pero si una persona siempre tiene Internet, ¿por qué guardar y enviarle una página o adjuntarle un archivo adjunto? Es mucho más fácil copiar el enlace de la página deseada en la barra de direcciones y pegarlo en el cuerpo de la carta.

Para hacer esto, puedes usar especializados. servicios en línea para archivar, por ejemplo - Archive.today: archivar hoy

Aquí solo necesitas colocar la dirección URL del recurso y el propio sistema creará un archivo zip y un enlace URL a una “instantánea” de la página web, que siempre estará en línea, incluso si la versión original desaparece.

Se puede adjuntar un archivo zip a correo electrónico, pegue el enlace a la "instantánea" de la página web en el campo de correo electrónico y envíelo todo a través de correo electrónico o guardar de cualquier otra forma.

Por ejemplo, la versión actual de la página de preguntas frecuentes de Moscú (junto con un archivo zip) está disponible aquí: archivar hoy

También puede utilizar servicios en línea para realizar capturas de pantalla, por ejemplo Web-capture: web-capture net

Hay mucho contenido interesante y útil en Internet. A veces es mucho más fácil enviarle a un amigo un enlace a informacion interesante en lugar de copiarlo del sitio y enviarlo de otras formas. ¿Cómo enviar un enlace de la forma más cómoda posible?

Correo electrónico

La mayoría de los servicios de correo electrónico modernos admiten la posibilidad de simplemente insertar un enlace. Es decir, solo necesita copiarlo de la barra de direcciones de su navegador, luego pegarlo en la letra y se podrá hacer clic en él, es decir, después de hacer clic en él, se abrirá automáticamente la página deseada.

Si escribe la dirección de un sitio o página manualmente, el enlace no funcionará de esta manera. Para solucionar este problema, intente escribir http:// o www al principio del enlace. Es decir, en lugar de site.com debe escribir http://site.com o www.site.com. Después de esto, se podrá hacer clic en el enlace.

También puede adjuntar un enlace a determinadas palabras de la carta. Para hacer esto, debe seleccionarlos y hacer clic en "Insertar enlace" en la barra de herramientas, y luego indicar la dirección de la página deseada en la ventana. Si su correo admite el uso de etiquetas html, puede insertar un enlace como este: las palabras a las que adjunta el enlace.

Compañeros de clase

Antes de enviar un enlace a Odnoklassniki, debe descargar un software especial que le permita hacerlo. Uno de esos programas es GF Tools. Es completamente gratis y muy fácil de usar. También puedes simplemente pegar el texto del enlace en un mensaje que envíes a otro usuario. También se puede colgar en una pared.

Vkontakte

También puede insertar el enlace en el estado y los mensajes en el muro. En este caso, todos los usuarios también podrán hacer clic en el enlace. Cuando inserta un enlace a un muro, el script del sitio mostrará automáticamente la primera imagen de la página a la que se proporciona el enlace, así como varias líneas de texto de la misma.

¿Cuáles son algunas formas de enviar una página web por correo electrónico?
De diversas formas, según lo que quiso decir el autor de la pregunta.

Por ejemplo, si tienes un programa para tomar capturas de pantalla, puedes tomar una captura de pantalla de una página abierta y enviarla como imagen al correo electrónico de la persona que necesitas. En este caso, la imagen estará muerta y los enlaces no funcionarán.

Sospecho que una respuesta más correcta sería guardar la página utilizando métodos estándar. Haga clic en el menú "archivo" en el navegador, luego "guardar como" y guarde la página web completa. Si la persona a quien se envía esta página tiene acceso a Internet podrá seguir los enlaces de la página, estarán funcionando.

En el primer caso, será más fácil abrir la página si se selecciona un formato de imagen común: bmp, jpg, gif. En el segundo caso, puede haber problemas al mostrar una página guardada en un navegador pero abierta en otro, puede que no se muestre correctamente o no se abra en absoluto;

Ambos casos están diseñados para su conservación en un archivo, para enviarlos a una persona que no tiene acceso constante a Internet. En este caso, es mejor adjuntarlo a la carta.

Pero si una persona siempre tiene Internet, ¿por qué guardar y enviarle una página o adjuntarle un archivo adjunto? Es mucho más fácil copiar el enlace de la página deseada en la barra de direcciones y pegarlo en el cuerpo de la carta.

Para hacer esto, puede utilizar servicios de archivo en línea especializados, por ejemplo - Archive.today: archive today

Aquí solo necesitas colocar la dirección URL del recurso y el propio sistema creará un archivo zip y un enlace URL a una “instantánea” de la página web, que siempre estará en línea, incluso si la versión original desaparece.

Se puede adjuntar un archivo zip a un correo electrónico, se puede insertar un enlace a una "instantánea" de una página web en el campo del correo electrónico y todo se puede enviar por correo electrónico o guardar de cualquier otra manera.

Por ejemplo, la versión actual de la página de preguntas frecuentes de Moscú (junto con un archivo zip) está disponible aquí: archivar hoy

También puede utilizar servicios en línea para realizar capturas de pantalla, por ejemplo Web-capture: web-capture net

Una de las funciones más populares del sitio es el formulario de solicitud o pedido, cuyos datos se envían por correo electrónico al propietario del sitio. Como regla general, estos formularios son simples y constan de dos o tres campos para la entrada de datos. ¿Cómo crear un formulario de pedido de este tipo? Esto requiere el uso de lenguaje de marcado HTML y lenguaje de programación PHP.

El lenguaje de marcado HTML en sí es simple; sólo necesitas descubrir cómo y dónde colocar ciertas etiquetas. Con el lenguaje de programación PHP, las cosas son un poco más complicadas.

Para un programador, crear un formulario de este tipo no es difícil, pero para un diseñador de diseño HTML, algunas acciones pueden parecer difíciles.

Crear un formulario de envío de datos en html

La primera línea será la siguiente.

Este es un elemento muy importante del formulario. En él indicamos cómo se transferirán los datos y a qué fichero. EN en este caso todo se envía mediante el método POST al archivo send.php. En consecuencia, el programa en este archivo debe recibir los datos, estarán contenidos en la matriz de publicaciones y los enviará a la dirección de correo electrónico especificada.

Volvamos a la forma. La segunda línea contendrá un campo para ingresar su nombre completo. Tiene el siguiente código:

El tipo de formulario es texto, es decir, el usuario podrá ingresar o copiar texto aquí desde el teclado. El parámetro de nombre contiene el nombre del formulario. En este caso, es fio; es bajo este nombre que se transmitirá todo lo que el usuario ingresó en este campo. El parámetro de marcador de posición especifica lo que se escribirá en este campo como explicación.

Siguiente línea:

Aquí casi todo es igual, pero el nombre del campo es correo electrónico, y la explicación es que el usuario ingresa su dirección de correo electrónico en este formulario.

La siguiente línea será el botón "enviar":

Y la última línea del formulario será la etiqueta.

Ahora juntemos todo.





Ahora hagamos que los campos del formulario sean obligatorios. Tenemos el siguiente código:





Cree un archivo que acepte datos del formulario HTML

Este será un archivo llamado send.php

En el archivo, en la primera etapa, debe aceptar datos de la matriz de publicaciones. Para ello creamos dos variables:

$fio = $_POST["fio"];
$correo electrónico = $_POST["correo electrónico"];

Los nombres de las variables en PHP están precedidos por un signo $ y se coloca un punto y coma al final de cada línea. $_POST es una matriz a la que se envían los datos del formulario. En el formulario html, el método de envío se especifica como método="post". Entonces, se aceptan dos variables del formulario html. Para proteger su sitio, debe pasar estas variables a través de varios filtros: funciones php.

La primera función convertirá todos los caracteres que el usuario intentará agregar al formulario:

En este caso, no se crean nuevas variables en php, sino que se utilizan las existentes. El filtro lo que hará es transformar al personaje"<" в "<". Также он поступить с другими символами, встречающимися в html коде.

La segunda función decodifica la URL si el usuario intenta agregarla al formulario.

$fio = urldecode($fio);
$correo electrónico = urldecode($correo electrónico);

Con la tercera función eliminaremos espacios del principio y final de la línea, si los hubiera:

$fio = recortar($fio);
$correo electrónico = trim($correo electrónico);

Hay otras funciones que te permiten filtrar variables de php. Su uso depende de qué tan preocupado esté de que un atacante intente agregar código de programa a este formulario de envío de correo electrónico html.

Validación de datos transferidos desde un formulario HTML a un archivo PHP

Para comprobar si este código funciona y si se están transfiriendo datos, simplemente puede mostrarlo en la pantalla usando la función de eco:

eco $fio;
eco "
";
eco $correo electrónico;

La segunda línea aquí es necesaria para separar la salida de las variables de PHP en diferentes líneas.

Envío de datos recibidos desde un formulario HTML a un correo electrónico usando PHP

Para enviar datos por correo electrónico, debe utilizar la función de correo en PHP.

mail("a qué dirección enviar", "asunto de la carta", "Mensaje (cuerpo de la carta)","De: desde qué correo electrónico se envía la carta \r\n");

Por ejemplo, debe enviar datos al correo electrónico del propietario o administrador del sitio. [correo electrónico protegido].

El asunto de la carta debe ser claro y el mensaje de la carta debe contener lo que el usuario especificó en el formulario HTML.

correo(" [correo electrónico protegido]", "Solicitud del sitio", "Nombre completo:".$fio.". Correo electrónico: ".$correo electrónico,"De: [correo electrónico protegido]\r\n");

Es necesario agregar una condición que verifique si el formulario se envió usando PHP a la dirección de correo electrónico especificada.

si (correo(" [correo electrónico protegido]", "Pedido desde el sitio", "Nombre completo:".$fio". Correo electrónico: ".$correo electrónico,"De: [correo electrónico protegido]\r\n"))
{
echo "mensaje enviado exitosamente";
) demás (
}

Por lo tanto, el código del programa del archivo send.php, que enviará los datos del formulario HTML al correo electrónico, se verá así:

$fio = $_POST["fio"];
$correo electrónico = $_POST["correo electrónico"];
$fio = htmlspecialchars($fio);
$correo electrónico = htmlspecialchars($correo electrónico);
$fio = urldecode($fio);
$correo electrónico = urldecode($correo electrónico);
$fio = recortar($fio);
$correo electrónico = trim($correo electrónico);
//echo $fio;
//eco "
";
//echo $correo electrónico;
si (correo(" [correo electrónico protegido]", "Solicitud del sitio", "Nombre completo:".$fio.". Correo electrónico: ".$correo electrónico,"De: [correo electrónico protegido]\r\n"))
( echo "mensaje enviado exitosamente";
) demás (
echo "ocurrieron errores al enviar el mensaje";
}?>

Se comentan tres líneas para comprobar si los datos se están transfiriendo al archivo. Si es necesario, se pueden eliminar, ya que solo eran necesarios para la depuración.

Colocamos el código HTML y PHP para enviar el formulario en un solo archivo.

En los comentarios a este artículo, muchas personas se preguntan cómo asegurarse de que tanto el formulario HTML como el código PHP para enviar datos al correo electrónico estén en un archivo y no en dos.

Para implementar este trabajo, debe colocar el código HTML del formulario en el archivo send.php y agregar una condición que verificará la presencia de variables en la matriz POST (esta matriz se envía desde el formulario). Es decir, si las variables en la matriz no existen, entonces debe mostrarle el formulario al usuario. De lo contrario, deberá recibir datos de la matriz y enviarlos al destinatario.

Veamos cómo cambiar el código PHP en el archivo send.php:



Formulario de solicitud del sitio.


//comprobar si existen variables en la matriz POST
if(!isset($_POST["fio"]) y !isset($_POST["correo electrónico"]))(
?>





) demás (
//muestra el formulario
$fio = $_POST["fio"];
$correo electrónico = $_POST["correo electrónico"];
$fio = htmlspecialchars($fio);
$correo electrónico = htmlspecialchars($correo electrónico);
$fio = urldecode($fio);
$correo electrónico = urldecode($correo electrónico);
$fio = recortar($fio);
$correo electrónico = trim($correo electrónico);
si (correo(" [correo electrónico protegido]", "Solicitud del sitio", "Nombre completo:".$fio.". Correo electrónico: ".$correo electrónico,"De: [correo electrónico protegido]\r\n"))(
echo "Mensaje enviado exitosamente";
) demás (
echo "Se produjeron errores al enviar el mensaje";
}
}
?>

Comprobamos la existencia de una variable en el array POST con la función PHP isset(). Un signo de exclamación antes de esta función en una condición significa negación. Es decir, si la variable no existe, entonces debemos mostrar nuestro formulario. Si no hubiera puesto un signo de exclamación, la condición significaría literalmente "si existe, entonces muestra el formulario". Y esto está mal en nuestro caso. Naturalmente, puedes cambiarle el nombre a index.php. Si cambia el nombre del archivo, no olvide cambiar el nombre del archivo en la línea

. El formulario debe vincular a la misma página, por ejemplo index.php. Agregué el título de la página al código.

Errores comunes que ocurren al enviar un formulario PHP desde un sitio web

El primer error, probablemente el más común, es cuando ves una página en blanco sin mensajes. Esto significa que cometió un error en el código de la página. Debe habilitar la visualización de todos los errores en PHP y luego verá dónde se cometió el error. Añadir al código:

ini_set("display_errors","Activado");
error_reporting("E_ALL");

El archivo send.php sólo debe ejecutarse en el servidor; de lo contrario, el código simplemente no funcionará. Es recomendable que no sea un servidor local, ya que no siempre está configurado para enviar datos a un servidor de correo externo. Si ejecuta el código no en el servidor, el código PHP se mostrará directamente en la página.

Por lo tanto, para un correcto funcionamiento, recomiendo colocar el archivo send.php en el alojamiento del sitio. Como regla general, allí ya está todo configurado.

Otro error común es cuando aparece la notificación “Mensaje enviado exitosamente”, pero la carta no llega al correo. En este caso, debes revisar cuidadosamente la línea:

si (correo(" [correo electrónico protegido]", "Pedido desde el sitio", "Nombre completo:".$fio". Correo electrónico: ".$correo electrónico,"De: [correo electrónico protegido]\r\n"))

En lugar de [correo electrónico protegido] debe haber una dirección de correo electrónico a la que se debe enviar la carta, pero en su lugar[correo electrónico protegido] debe ser un correo electrónico existente para este sitio. Por ejemplo, para un sitio web esto será . Sólo en este caso se enviará una carta con los datos del formulario.