Un Evento Unico. 5 Sale. 27 Interventi. SEO, SOCIAL, E-Commerce, Mobile, Turismo.
CLICCA QUI e SCOPRI DI PIù X Chiudi
 
Forum GT: Condividiamo idee e conoscenza Forum GT: Condividiamo idee e conoscenza


Condividi questo contenuto nei Social Network:
Ti stiamo aspettando: Registrati subito e gratis. Entra a far parte di una delle comunità più attive in Italia. Se hai dimenticato i tuoi dati li puoi recuperare subito.


Vai indietro   Forum per Webmaster: Condividiamo Idee e Conoscenza > Sviluppo e Gestione siti web > Php - Mysql
Benvenuto! Forum Regole FAQ Lista utenti Calendario Segna come letti


Rispondi
 
LinkBack Strumenti di discussione
Vecchio 16-01-11, 18:16   #1 (permalink)
User
 
Data di registrazione: Oct 2010
Messaggi: 13
Campo BCC nel form in php

Ho un problema che non riesco a risolvere nel form in php.
Vorrei che, cliccando sul tasto "invia", venisse inviata un'email all'indirizzo email@miaemailmiaemail.it e un'email nascosta in BCC ad un altro indirizzo email.
Ho provato a guardare su altre discussioni, ma non ho trovato la soluzione oppure non ho saputo applicarla.
Spero riusciate ad indicarmi nello specifico dove modificare.
Vi ringrazio anticipatamente per l'aiuto.

Il mio codice è questo:


<?php
$email=$_POST['email'];

#######################################
# IMPOSTAZIONI DA CONFIGURARE #
#######################################

//(1) indirizzo email del destinatario del modulo
$destinatario = "email@miaemailmiaemail.it";

//(2) indirizzo email del mittente, campo FROM
// non toccare se desiderate che l'indirizzo email inserito nel modulo sia
// riportato nel campo DA del messaggio che sarà ricevuto.
// Se invece desiderate un campo fisso annullare la prima riga e abilitare
// la seconda inserendo la dicitura desiderata (per annullare mettere //
// all'inizio della prima riga e per abilitare togliere // dalla seconda riga)
$nome_mittente = "ilmiositopersonale.it";
// $nome_mittente = "Dal Modulo";

//(3) oggetto del messaggio
$oggetto_email = "FORM contact";

//(4) se si vogliono rendere tutti i campi NON OBBLIGATORI impostare su "y".
// (valori possibili: "y" e "n")
$all_free = "y";

//(5) se avete messo "n" al punto (4) inserire tra virgolette, separati
// da virgola, i nomi dei campi da rendere OBBLIGATORI
// Esempio: $campi_req = array("nome","telefono","via");
$campi_req = array("","");

//(6) controllo validità del campo email. (valori possibili: "y" e "n")
$obbligo_email = "n";

//(7) obbligare l'utente ad accettare le condizioni.
// (valori possibili: "y" e "n")
$accetta_condizioni = "n";

//(8) URL della pagina di ringraziamento
$pagina_grazie = "ilmiositopersonale.it/richiestainviata.html";

//(9) URL della pagina errore campi vuoti
$pagina_error_empty = "ilmiositopersonale.it/error.html";

//(10) URL della pagina errore email
$pagina_error_email = "ilmiositopersonale.it/error.html";

//(11) URL della pagina errore condizioni non accettate
$pagina_error_condizioni = "ilmiositopersonale.it/error.html";

//(12) URL della pagina errore invio non autorizzato (mancanza di referer)
$pagina_error_referer = "ilmiositopersonale.it/error.html";

#######################################
# FINE IMPOSTAZIONI DA CONFIGURARE #
#######################################

//ora e data
$ora = date ("H:i:s");
$data = date ("d/m/Y");

//intestazione email che arriva al destinatario
$corpo = "
Modulo inviato il $data alle ore $ora
Riepilogo dati:\n\n";

//============== NON TOCCARE NULLA OLTRE QUESTA RIGA ==================\


########### CODICI ###########

//variabili per rendere lo script compatibile anche con la versione PHP 4.2 e maggiori
if(!isset($_SERVER) OR !$_SERVER OR !is_array($_SERVER) OR count(array_diff($_SERVER, $HTTP_SERVER_VARS))){
$_POST = &$HTTP_POST_VARS;
}

//prende IP ADDRESS
if(isset($_SERVER["HTTP_X_FORWARDED_FOR"])){

if ($_SERVER["HTTP_X_FORWARDED_FOR"] == "") {

$ipnumb = getenv("REMOTE_ADDR");

}else {

$ipnumb = getenv("HTTP_X_FORWARDED_FOR");

}

} else {

$ipnumb = getenv("REMOTE_ADDR");
}
###################################

//controllo referer
if(empty($_SERVER["HTTP_REFERER"])){

header ("Location: $pagina_error_referer");
exit();

}

########### CONTROLLO DEI CAMPI ###########
$control_campi = 0;

if($all_free != "y"){

foreach($_POST as $key => $valore){

if(in_array($key,$campi_req)){

if(trim($valore) == ""){

$control_campi++;

}

}

}

} else {

$control_campi = 0;

}

########### CONTROLLO EMAIL ###########
$control_email = 0;

if($obbligo_email == "y"){

if(isset($_POST['email'])){

if(!eregi("^([a-zA-Z0-9_.-])+@(([a-zA-Z0-9_-])+.)+[a-z]{2,6}$", $_POST['email'])){

$control_email++;

}

} else {

$control_email = 0;

}

}

########### CONTROLLO CONDIZIONI ###########
$control_condizioni = 0;

if($accetta_condizioni == "y"){

if(isset($_POST['trattamento_dati']) && $_POST['trattamento_dati'] == "accetto"){

$control_condizioni = 0;

} else {

$control_condizioni ++;

}

}

########### INVIO EMAIL ###########
if($control_campi == 0){

if($control_email == 0){

if($control_condizioni == 0){

foreach($_POST as $key => $valore){

$key = ucfirst(stripslashes(trim($key)));
$valore = stripslashes(trim($valore));
$key = str_replace("_"," ",$key);

if(trim($valore) == "") $valore = "Non compilato";

$corpo .= $key .": ". $valore ."\n\n";

}

$corpo .= "Numero IP: $ipnumb"."\n";

$corpo .= "_________________________________________________ ___________ \n\n

";


// invio e-mail
// Header Mail
$headmail.="From: $nome_mittente <$nome_mittente>\n";
$headmail.="Return-Path: $nome_mittente\n";
$headmail.="User-Agent: Php Mail Function\n";
$headmail.="X-Accept-Language: en-us, en\n";
$headmail.="MIME-Version: 1.0\n";
$headmail.="X-Priority: 1 (Highest)\n";
$headmail.="Content-Type: text/plain; charset=ISO-8859-1; format=flowed\n";
$headmail.="Content-Transfer-Encoding: 7bit\n";

ini_set('sendmail_from', "$destinatario");
mail("$destinatario", "$oggetto_email", "$corpo", "$headmail");

header ("Location: $pagina_grazie");

} else {

header ("Location: $pagina_error_condizioni");

}

} else {

header ("Location: $pagina_error_email");

}

} else {


header ("Location: $pagina_error_empty");

}

?>
lucanetto non in linea   Rispondi citando
Vecchio 17-01-11, 18:07   #2 (permalink)
User
 
L'avatar di html5today
 
Data di registrazione: Dec 2010
Ubicazione: Roma
Messaggi: 108
Aggiungi un header, così:
Codice PHP:
$headmail .= 'Bcc: indirizzo_bcc@dominio.com' "\r\n"
E poi dai un'occhiata alla netiquette, in particolare al punto 3) di http: / / it.wikipedia.org/wiki/Netiquette#Regole_e_principi_della_netiquette
html5today non in linea   Rispondi citando
Vecchio 17-01-11, 19:57   #3 (permalink)
User
 
Data di registrazione: Oct 2010
Messaggi: 13
Grazie.

Grazie mille, ho risolto con il tuo aiuto.
Chiedo scusa per aver inserito tutto, ma pensavo potesse essere utile, perchè avevo provato in vari altri modi e pensavo ci fosse qualcosa di sbagliato.
Grazie ancora!
lucanetto non in linea   Rispondi citando
Rispondi
Tags: , , ,



Strumenti di discussione

Regole di scrittura
Non puoi postare nuove discussioni
Non puoi rispondere alle discussioni
Non puoi allegare file
Non puoi editare i tuoi post

BB code is Attivo
smilies è Attivo
[IMG] il codice è Attivo
Il codice HTML è Disattivato
Trackbacks are Attivo
Pingbacks are Attivo
Refbacks are Disattivato
Vai al forum



Tutti gli orari sono GMT +3. Attualmente sono le 15:29.




Forum GT - © 2004-2009 GT idea S.r.l P.iva 02418200800 - Privacy/Disclaimer

SEO by vBSEO 3.2.0 ©2008, Crawlability, Inc.