- Home
- Categorie
- Coding e Sistemistica
- PHP
- Mail di testo puro, senza HTML
-
Ha senso se evi farti mandare codici html dagli utenti ad esempio... ogni cosa ha la sua utilità...
-
Ciao Girovago,
Thedarkita ha ragione... i computer fanno solo quello che dice l'uomo e non sempre ciò ha senso...:DTolta la riga che ti è stata indicata, l'email arriva come testo. Se non vuoi vedere i tag li devi eliminare, passando da:
[html]
$sms = '
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<title>Contatti</title>
</head>
<body style="margin:0px;">
<table cellpadding="0" cellspacing="0" style="height:100%;width:500px;">
<tr>
<td style="height:100%;padding:20px;vertical-align:top;">
<table>
<tr><td colspan="2">
</td>
</tr>
<tr><td width="110"><b>Nome:</b></td>
<td width="300">'.$nome.'</td></tr>
<tr>
<td><b>Oggetto:</b></td>
<td>'.$cognome.'</td></tr>
<tr>
<td><b>E-mail:</b></td>
<td>'.$mittente.'</td></tr>
<tr>
<td><b>Richiesta:</b></td>
<td>'.$richiesta.'</td></tr>
</table></td></tr>
</table>
</body>
</html>';[/html]
a
[html]
$sms = '
Nome: '.$nome.'
Oggetto: '.$cognome.'
E-mail: '.$mittente.'
Richiesta: '.$richiesta;
[/html]
-
Grande ceccus, ora funziona a dovere ed arriva in solo testo.
Grazie!
-
Riprendo il thread per fare un'altra richiesta, "approfittando" del vostro sapere
Nel testo dell'email, se scrivo lettere con l'accento, come ad esempio à, è, ò, mi compaiono sempre questi segni: Ã, è, ò, ì
Come mai e come posso risolvere questo problema?
Grazie!
-
usa le entità html, è per la è ecc
-
Non sono un esperto e non ho capito cosa dovrei fare, scusami
Attualmente questo è il mio file .php:
[php]<?php
$nome = stripslashes($_POST['nome']);
$cognome = stripslashes($_POST['cognome']);
$mittente = stripslashes($_POST['mittente']);
$richiesta = stripslashes($_POST['richiesta']);
$sms = '
Nome: '.$nome.'
Oggetto: '.$cognome.'
E-mail: '.$mittente.'
Richiesta: '.$richiesta;
$headers = "From: $nome <$mittente>\n";if(mail($_POST['destinatario'], $cognome, $sms, $headers)){
echo '&controllo=invio avvenuto con successo.';
}
else{
echo '&controllo=errore: e-mail non inviata.';
}
?> [/php]Cosa dovrei modificare?
Grazie!
-
[php]<?php
$nome = stripslashes($_POST['nome']);
$cognome = stripslashes($_POST['cognome']);
$mittente = stripslashes($_POST['mittente']);
$richiesta = stripslashes($_POST['richiesta']);
$sms = htmlentities('
Nome: '.$nome.'
Oggetto: '.$cognome.'
E-mail: '.$mittente.'
Richiesta: '.$richiesta);
$headers = "From: $nome <$mittente>\n";if(mail($_POST['destinatario'], $cognome, $sms, $headers)){
echo '&controllo=invio avvenuto con successo.';
}
else{
echo '&controllo=errore: e-mail non inviata.';
}
?> [/php]prova cosi...
-
Niente da fare, ora le lettere con l'accento escono così:
ò
Ã
ì
èGrazie per il supporto
-
Aiutino
-
è normale che ti escano cosi...
caratteri come à equivalgono a à che è HTML...
potresti utilizzare le mail in formato html ma con i tag <pre> e </pre> tra il messaggio....non so ..
-
@ilnetsurfer said:
è normale che ti escano cosi...
caratteri come à equivalgono a à che è HTML...
potresti utilizzare le mail in formato html ma con i tag <pre> e </pre> tra il messaggio....non so ..Cerco di capire allora:
se voglio l'email senza HTML, quindi solo testo, devo accontentarmi e ricevere le lettere accentate con quei caratteri strani, non c'è altro modo.Non conosco i tag <pre>, ma se voglio usarli dovrò comunque tornare al linguaggio HTML, giusto?
Pensavo fosse più semplice ricevere una mail testuale
-
pre significa preformatted, preformattata...
tipo quando fai su php print_r($array), il codice ti appare tra i tag <pre> che non modificano gli spazi e le posizioni..ma la email sempre con html la devi mandare