- Home
- Categorie
- Coding e Sistemistica
- PHP
- invio email
-
Beh tu devi recuperare i valori inviati dal form... ed elaborarli
-
facendo un esempio, ho inserito nella tabella in una cella "Nome:" e in quella accanto <input type="text" name="nome">
nella pagina che invia l' email ho inserito $messaggio = $nome; ma la mail mi arriva vuota....senza niente dentro...propio bianco.
-
Per recuperare i valori dalla pagina di arrivo devi utilizzare $_GET o $_POST a seconda del method utilizzato nel from:
$messaggio = $_POST['nome'];
in questo modo puoi ricostruire la tabella nel corpo del messaggio da spedire.
-
veramente io nn ho ne get ne post... questa è la pagina dove c'è la tabella per la registrazione...
c'è qualcosa di sbagliato???<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "">
<html xmlns="l">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Pagina per la registrazione</title>
</head>
<body>
<center> Compila la scheda e clicca sul tasto " INVIA " </center>
<center> <table width="100" height="80" border="2">
<td> <align="left"> Nome: </align> </td>
<td> <center> <input type="text" name="nome"> </center> </td>
<tr>
<td> <align="left"> Cognome: </align> </td>
<td> <center> <input type="text" name="cognome"> </center> </td>
<tr>
<td> <align="left"> e-mail: </align> </td>
<td> <center> <input type="text" name="e-mail"> </center> </td>
<tr>
<td> <align="left"> Username: </align> </td>
<td> <center> <input type="text" name="username"> </center> </td>
<tr>
<td> <align="left"> Password: </align> </td>
<td> <center> <input type="text" name="password"> </center> </td>
</table>
<center>
<form action="pagina_invio_mail.php">
<input type="submit" value=" INVIA ">
</form>
</center>
</body>
</html>
-
Il method di default è GET, ma conviene sempre, a meno di necessità particolari, utilizzare il POST.
Nel TAG form devi aggiungere method="post":<form action="pagina_invio_mail.php" method="post">
E nella pagina pagina_invio_mail.php recuperi i valori così passati utilizzando:
$valore_1 = $_POST['var_1'];
$valore_2 = $_POST['var_2'];
...
$valore_n = $_POST['var_n'];
-
mi arriva la mail vuota....
ecco cosa ho fatto...
nella pagina invio_mail.php ho inserito:
<?php$nome = $_POST['nome']; <-----ho recuperato i valori
$cognome = $_POST['cognome'];$a="mio_indirizzo";
$oggetto="Iscrizione";
$intestazioni= "From: indirizzo_sito";
$intestazioni .= "indirizzo";
$intestazioni .= "X-Mailer: PHP/" . phpversion();
$messaggio = $_POST['nome']; <-----------------if (!mail($a, $oggetto, $messaggio, $intestazioni))
{
// notifica_errore();
stampa_errore("$email: Impossibile inoltrare la richiesta a questo indirizzo");
die();
}
?>nella pagina registrazione:
<body>
<center> Compila la scheda e clicca sul tasto " INVIA " </center>
<center> <table width="100" height="80" border="2">
<td> <align="left"> Nome: </align> </td>
<td> <center> <input type="text" name="nome"> </center> </td>
<tr>
<td> <align="left"> Cognome: </align> </td>
<td> <center> <input type="text" name="cognome"> </center> </td>
<tr>
<td> <align="left"> e-mail: </align> </td>
<td> <center> <input type="text" name="e-mail"> </center> </td>
<tr>
<td> <align="left"> Username: </align> </td>
<td> <center> <input type="text" name="username"> </center> </td>
<tr>
<td> <align="left"> Password: </align> </td>
<td> <center> <input type="text" name="password"> </center> </td>
</table>
<center>
<form action="pagina_invio_mail.php" method="post"> <---metodo
<input type="submit" value=" INVIA "> </form>
</center>
</body>Ma ancora mi arriva l' email vuota
-
[php]
<body>
<form action="pagina_invio_mail.php" method="post">
<center> Compila la scheda e clicca sul tasto " INVIA " </center>
<center> <table width="100" height="80" border="2">
<td> <align="left"> Nome: </align> </td>
<td> <center> <input type="text" name="nome"> </center> </td>
<tr>
<td> <align="left"> Cognome: </align> </td>
<td> <center> <input type="text" name="cognome"> </center> </td>
<tr>
<td> <align="left"> e-mail: </align> </td>
<td> <center> <input type="text" name="e-mail"> </center> </td>
<tr>
<td> <align="left"> Username: </align> </td>
<td> <center> <input type="text" name="username"> </center> </td>
<tr>
<td> <align="left"> Password: </align> </td>
<td> <center> <input type="text" name="password"> </center> </td>
</table>
<center>
<input type="submit" value=" INVIA "> </form>
</center>
</form>
</body>
[/php]
-
io non ho inserito il form a inizio tabella....ma alla fine...sul bottone...è un errore???
-
si
-
Non oso mettere in dubbio quello che hai scritto tu, cmq il form è chiuso 2 volte....è giustò così???
<input type="submit" value=" INVIA "> </form> <--------
</center>
</form> <--------
</body>
-
no, il primo toglilo... era quell oche avevi messo tu, che mi sono dimenticato di toglierlo
-
Ok, grazie 1000....un ultimissima domanda...(sei stato gentilissimo e pazientissimo...ti costa l' ultima???)
Nel messaggio non devo mandare solo il nome....dopo averlo preso con POST...etc... come devo fare qui???
$messaggio = $_POST['nome']; come faccio a inserire anche cognome....email etc???
-
[php]
messaggio = 'Nome: '.$_POST['nome'].'Cognome: '.$_POST['cognome'];
[/php]
e cosi via
-
ok, grazie tantissimo...ciao
-
prego