Ayuda con php

Hola!

Tengo una pequeña apliacación que he hecho a base del método científico de "a ver si así rula" porque no tengo mucha idea de php o mysql...

el tema está en que he conseguido enviar mails cuando se da de alta un registro con información y todo! XD

La duda que tengo es... ¿cómo puedo adjuntar un enlace? y la segunda duda es, ¿cómo puedo poner acentos?

Este es el código del cuerpo del mensaje:
$body = "Se ha dado de alta un nuevo Parte de Averia.

Descripcion = '$desc'.

Este mail se ha generado automaticamente y su direccion es invalida.

Se puede realizar el seguimiento de este Parte de Averia en la opcion _Mostrar
informacion de partes de averia abiertos_.

Acentos omitidos deliberadamente.

Un saludo.";


Un saludo y gracias por vuestra ayuda (en PC>General pasaron de mi cara T_T)
eraser escribió:Hola!

Tengo una pequeña apliacación que he hecho a base del método científico de "a ver si así rula" porque no tengo mucha idea de php o mysql...

el tema está en que he conseguido enviar mails cuando se da de alta un registro con información y todo! XD

La duda que tengo es... ¿cómo puedo adjuntar un enlace? y la segunda duda es, ¿cómo puedo poner acentos?

Este es el código del cuerpo del mensaje:
$body = "Se ha dado de alta un nuevo Parte de Averia.

Descripcion = '$desc'.

Este mail se ha generado automaticamente y su direccion es invalida.

Se puede realizar el seguimiento de este Parte de Averia en la opcion _Mostrar
informacion de partes de averia abiertos_.

Acentos omitidos deliberadamente.

Un saludo.";


Un saludo y gracias por vuestra ayuda (en PC>General pasaron de mi cara T_T)


hace tiempo que no uso php pero...

WHAT??!! explícame mejor que se supone que has echo...
darksturm escribió:
hace tiempo que no uso php pero...

WHAT??!! explícame mejor que se supone que has echo...


En $body meto toda la información que quiero que aparezca en el cuerpo del mensaje...

El mail se envía así:

if (mail($to, $subject, $body, $headers)) {
  echo MuestraErr("El mensaje se ha enviado correctamente");
} else {
  echo MuestraErr("ERROR: El mensaje NO se ha enviado");
}

Como puedes ver los campos son autoexplicativos.
El problema que tengo es de formato. Quiero saber cómo meter acentos y / en el cuerpo del mensaje sin que me de un error de parsing o le llegue al usuario un código raro.
[idiotez]

Hoygan nesecito halluda para daungradear mi pechepé!!!1eleven

[/idiotez]

Sorry, ni idea.
Katou escribió:[idiotez]

Hoygan nesecito halluda para daungradear mi pechepé!!!1eleven

[/idiotez]

Sorry, ni idea.


¿y si te lo traduzco al lenguaje hoygan? [sonrisa]
prueba con "&#---;" donde --- son el codigo del carácter (acentuado, el que sea)

probando

]

Ð
¹ºººººº

(Cítame para ver como lo uso)
SwapNewbie escribió:prueba con "&#---;" donde --- son el codigo del carácter (acentuado, el que sea)

probando

]

Ð
¹ºººººº

(Cítame para ver como lo uso)


ಠ_ಠ
SwapNewbie escribió:prueba con "&#---;" donde --- son el codigo del carácter (acentuado, el que sea)

probando

]

Ð
¹ºººººº

(Cítame para ver como lo uso)


Justo eso venía a preguntar!!! ¿De dónde saco los códigos de las letras acentuadas?
Lo digo porque el resto lo tengo solucionado así:
$from="Cutreaplicacion";
$headers="From: $from\n";
$headers=$headers."cc: $cc[1]\n";
$headers=$headers."X-Mailer:PHP/".phpversion()."\n";
$headers=$headers."Mime-Version: 1.0\n";
$headers=$headers."Content-Type: text/html";
$to = "----el mail----";
$subject = "Nuevo parte de averia";
$body = "<i>Este mail se ha generado automaticamente y su dirección es inválida.</i><br>
<br>
<b>Se ha dado de alta un nuevo Parte de Avería.</b><br>
<br>
Descripción = '$desc'.<br>
<br>
Se puede realizar el seguimiento de este Parte de Avería en la opción
<b>Mostrar mas información de Partes de Avería abiertos</b> en
la <a
href="---direccion de la aplicación---">Aplicación</a><br>
<br>
Un saludo.";


Es decir, que al final envío el mail en formato html, que me sirve para lo que quiero

EDITO: Vale, el problema lo tengo en el $subject, que no me traga con el acento ni con "& iacute ;" ni con "& # 237 ;". Me aparece el literal (el iacute o el &...)
eraser escribió:EDITO: Vale, el problema lo tengo en el $subject, que no me traga con el acento ni con "& iacute ;" ni con "& # 237 ;". Me aparece el literal (el iacute o el &...)




pues aquí ya...

Dudo que el título pueda estar en HTML, así que... intenta esbrinar que codificacion se usa para el subject... y luego escribe el carácter, o yo que se... ya no llego a tanto [snif]


[bye]
SwapNewbie escribió:


pues aquí ya...

Dudo que el título pueda estar en HTML, así que... intenta esbrinar que codificacion se usa para el subject... y luego escribe el carácter, o yo que se... ya no llego a tanto [snif]


[bye]


na, lo dejo sin acentuar y a la marcha XD

Gracias!

EDITO: na, lo he buscado en san google y a la primera... voy a probar y os cuento.
> > Estoy de acuerdo con Martin,...
> >
> > No es un problema del "content" del mensaje ya que esto lo tenemos
> > solucionado. Es un problema de "indicarle claramente al cliente de
> correo
> > que la cabecera tiene caracteres de m�s de 7 bits y adem�s que estos
> est�n
> > codificados en ISO-8559-1 (o sea latin-1).

esta por ahí, lo que yo decía, cosas de codificaciones...

otro:
$cabecera .= "Content-Type: multipart/alternative; charset=iso-8859-1 ";
Si, es tema de la codificación.

He intentado esto: $asunto = "Nuevo Parte de Aver".base64_encode("í")."a";
Y en principio debería funcionar, pero no puedo teclear í porque estoy en una terminal que no se cómo configurar para que el linux me reconozca bien los carácteres especiales... voy a probar con otra.

Na, no rula bien, pasando XD
base64_encode(str_replace(chr(92)

podria servir de algo?

EDIT: Esta í, í, es el caracter 237
SwapNewbie escribió:base64_encode(str_replace(chr(92)

podria servir de algo?

EDIT: Esta í, í, es el caracter 237


o sea, en lugar de 92, 237... voy a probar

No rula :P directamente no pone nada en lugar donde debería estar la í
creo que sería sin el str_replace

aunque no se...

poner char directamente

http://www.php-es.com/function.chr.html

„”
§
$asunto = "Nuevo Parte de Aver=?UTF-8?B?w60=?=a";


Así rula
eraser escribió:
$asunto = "Nuevo Parte de Aver=?UTF-8?B?w60=?=a";


Así rula


me alegro, yo pediría a cyber que lo moviera a PC, nunca se sabe cuando esto puede serle util a alguien [barret]

[bye]
SwapNewbie escribió:
me alegro, yo pediría a cyber que lo moviera a PC, nunca se sabe cuando esto puede serle util a alguien [barret]

[bye]


pues si :)
gracias!
17 respuestas