Ciao ragazzi,volevo sapere come posso fare ad associare una mail diversa di destinazione a secondo la pagina dalla quale accedo al form
Ciao ragazzi,volevo sapere come posso fare ad associare una mail diversa di destinazione a secondo la pagina dalla quale accedo al form
puoi fare così:
nella pagina php che manda la mail inserisci un array
nel form metti un campo hiddenCodice PHP:
$indirizzi=array("io@io.it","tu@io.it","lui@io.it");
// e poi
mail($indirizzi[$_POST['destinazione']],$oggetto,$messaggio)
<input type="hidden" name="destinazione" value="0">
il value di hidden decide l'indirizzo da te scelto in base all' ordine che hai scelto nell' array.
nel mio esempio la mail sarà mandata a io@io.it
se value fosse stato =1 allora sarebbe stata mandata a tu@io.it
ciao ciao![]()
Non sempre essere l'ultimo è un male... almeno non devi guardarti le spalle
il mio profilo su PHPClasses e il mio blog laboweb
Ti ringrazio per la pronta risposta,ma ti confermo che sono veramente l'ultimo in questo campo.Mi Affaccio ora nel mondo web,ho creato un sito con Frontpage.....l'html non è il mio pane quotidiano,ma imparo in fretta.
Quindi la mia domanda nasce spontanea.. posso inserire il codice PHP che mi hai dato nelle pagine html? visto che anche il Form l'ho creato con FrontPage come tutto il sito.
Grazie per la disponibilità
potresti fare tutto in una pagina addirittura, ma siccome sei novizio ti faccio gestire tutto in 3 pagine così magari capisci la meccanica della cosa:
scelta.htm
form.php
mail.php
scelta.htm:
<html>
<head>
<meta http-equiv="Content-Language" content="it">
<meta http-equiv="Content-Type" content="text/html; charset=windows-1252">
<title>Nuova pagina 2</title>
</head>
<body>
<p align="center">manda una mail a:</p>
<p align="center">amministrazione</p>
<p align="center">reparto tecnico</p>
<p align="center">reparto commerciale</p>
</body>
</html>
form.php
fai caso a questa rigaCodice PHP:
<html>
<head>
<meta http-equiv="Content-Language" content="it">
<meta http-equiv="Content-Type" content="text/html; charset=windows-1252">
<title>Nuova pagina 1</title>
</head>
<body>
<form method="POST" action="mail.php">
<table border="0" width="100%" style="border-collapse: collapse">
<input type="hidden" name="destinazione" value="<?php echo $_REQUEST['val']; ?>">
<tr>
<td align="right">nome</td>
<td><input type="text" name="nome" size="20"></td>
</tr>
<tr>
<td align="right">indirizzo</td>
<td><input type="text" name="indirizzo" size="20"></td>
</tr>
<tr>
<td align="right">commenti</td>
<td><textarea rows="2" name="commenti" cols="20"></textarea></td>
</tr>
</table>
<p align="center"><input type="submit" value="Invia" name="Invia"></p>
</form>
</body>
</html>
<input type="hidden" name="destinazione" value="<?php echo $_REQUEST['val']; ?>">
nel campo value vengono aperti i tag php e recuperato val
nel form di scelta amministrazione ha un link del tip form.php?val=0
con $_REQUEST['val'] recuperi quel famoso val che hai indicato nel link
e infine
mail.php
Codice PHP:
<?
$indirizzi=array("io@io.it","tu@io.it","lui@io.it");
// e poi
$nome=$_POST['nome'];
$oggetto="e-mail di commenti da ".$_POST['indirizzo'];
$messaggio="$nome ti ha scritto:\".$_POST['commenti'];
if (!mail($indirizzi[$_POST['destinazione']],$oggetto,$messaggio))
{
echo "qualcosa non ha funzionato";
}
else
{
echo "ok tutto in ordine. La mail è stata inviata";
}![]()
Non sempre essere l'ultimo è un male... almeno non devi guardarti le spalle
il mio profilo su PHPClasses e il mio blog laboweb
Ho provato ad inserire i codici che mi hai inviato,ti ringrazio per averli divisi in tre pagine,sono riuscito a caire il meccanismo,ma dopo che premo il tasto invio del form ricevo un errore (Parse error: syntax error, unexpected T_ENCAPSED_AND_WHITESPACE, expecting T_STRING or T_VARIABLE or T_NUM_STRING in ).
Guardando il codice di mail php apri un <? ma non si chiude,ho provato anche chiudendolo ma non funziona.
mi scrivi tutto l' errore completo e la pagina in cui ti da l' errore?
Non sempre essere l'ultimo è un male... almeno non devi guardarti le spalle
il mio profilo su PHPClasses e il mio blog laboweb
risolto da solo..
fai così
Codice PHP:
<?
$indirizzi=array("io@io.it","tu@io.it","lui@io.it");
// e poi
$nome=$_POST['nome'];
$oggetto="e-mail di commenti da ".$_POST['indirizzo'];
$messaggio="$nome ti ha scritto: ".$_POST['commenti'];
if (!mail($indirizzi[$_POST['destinazione']],$oggetto,$messaggio))
{
echo "qualcosa non ha funzionato";
}
else
{
echo "ok tutto in ordine. La mail è stata inviata";
}
?>
Non sempre essere l'ultimo è un male... almeno non devi guardarti le spalle
il mio profilo su PHPClasses e il mio blog laboweb
l'errore completo è Parse error: syntax error, unexpected T_ENCAPSED_AND_WHITESPACE, expecting T_STRING or T_VARIABLE or T_NUM_STRING in D:\Inetpub\webs\nome sito\mail.php on line 5 ,l'errore lo da sulla pagina mail.php,dopo aver cliccato invia sulla pagina form.php.
Grazie funziona,anche se su una mail di libero non vedo messaggi invece su una su alice la vedo immediatamente.
Posso linkare invece che da un link come sul tuo esempio da un pulsante su form.php?value=0 ?
anche da un' immagine
Non sempre essere l'ultimo è un male... almeno non devi guardarti le spalle
il mio profilo su PHPClasses e il mio blog laboweb