- Home
- Categorie
- Coding e Sistemistica
- PHP
- Recupero dati da pagina php
-
Recupero dati da pagina php
Ciao a tutti!
Sto modificando del codice (libero) che mi permetta di recuperare i dati da un form e di inviarli ad un indirizzo email specifico.
Lo script è cosi composto:Form (qui inseriamo i vari dati)
invia_mail (pagina che recupera i dati, invia la mail e mi reindirizza ad un'altra pagina)Adesso vorrei che quella pagina reindirizzata contenga alcuni dati del form...è possibile?
Grazie
-
O passi i dati che vuoi recuperare come parametri sull'URL al quale reindirizzi e poi li recuperi con $_GET[] oppure puoi inserire i dati di tuo interesse in sessione.
-
EDIT: Avevo capito male la domamnda.
Si la soluzione migliore è tramite $_GET[] oppure con le sessioni.
-
penso che con le sessioni sarebbe meglio...
-
Ciao, grazie a tutti per le risposte, ho risolto con le sessioni, solo che volevo postare il codice per chiedere un altro consiglio ma non ci riesco... come lo posso postare? grazie
-
Basta che copi il codice nella risposta.
L'importante è modificare i link che sono nel codice in questa maniera: hp://*.
-
<?php
session_start();
$capitale = $_POST["capitale"];
$N = $_POST["durata"]$_POST["cadenza"];
$t = $_POST["tasso"]/(100$_POST["cadenza"]);$T = $t + 1;
$n = $N - 1;$a = array();
$i = 0;
while ($i <= $n) {
$pow = pow($T,$i);
array_push($a,$pow);
$i = $i + 1;
}$somma = array_sum($a);
$pot = pow($T,$N);
$rata = $capitale*$pot/$somma;
$tot = $rata*$N;
$interessi = $tot - $capitale;//formattazione cifre
$capitale = number_format($capitale,2,',','.');
$rata = number_format($rata,2,',','.');
$tot = number_format($tot,2,',','.');
$interessi = number_format($interessi,2,',','.');
//fine formattazione
$freq="mensile";$_SESSION['messaggio']= "
Capitale finanziario: ". $_POST['capitale'] ." ?<br />
Durata del prestito: ". $_POST['durata'] ." anni<br />
Frequenza rata: ". $freq ."<br />
Tasso di interesse: ". $_POST['tasso'] ." %<br />
importo della rata: ".$rata ."<br />
numero di rate: ".$N ." rate<br />
totale rate: ".$tot ." ?<br />
interessi: ".$interessi;//email del destinatario del modulo
$destinatario = "mia email";//nome mittente per la corretta intestazione del modulo
$nome_mittente = "Prestifin Form";//email mittente per per la corretta intestazione del modulo
$email_mittente = "email del mittente";//oggetto dell'email
$oggetto_email = "Modulo inviato dal tuo sito";//se si vogliono rendere tutti i campi NON OBBLIGATORI impostare su "y". valori possibili: "y" e "n"
$all_free = "y";//se invece avete messo "n" inserire tra virgolette, separati da virgola, i nomi dei campi da rendere OBBLIGATORI
//Esempio: $campi_req = array("telefono","via");
$campi_req = array("nome_e_cognome","cellulare");//controllo del campo email? valori possibili: "y" e "n"
$obbligo_email = "y";//obbligare l'utente ad accettare le condizioni? valori possibili: "y" e "n"
$accetta_condizioni = "y";//url della pagina di ringraziamento
$pagina_grazie = "mia pagina ringraziamento";//url della pagina errore campi vuoti
$pagina_error_empty = "mia pagina campo vuoto";//url della pagina errore email
$pagina_error_email = "mia pagina errore";//url della pagina errore condizioni non accettate
$pagina_error_condizioni = "mia pagina errore condizioni";//orario e data
$ora = date ("H:i:s");
$data = date ("d/m/Y");//intestazione dell'email (arriva al destinatario)
$corpo = "
Modulo inviato il $data alle ore $ora\n
Riepilogo dati:\n
____________________________________________________________\n";if(!isset($_SERVER) OR !$_SERVER OR !is_array($_SERVER) OR count(array_diff($_SERVER, $HTTP_SERVER_VARS))){
$_POST = &$HTTP_POST_VARS;
}//prendo il numero IP
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 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 ++; } }
########### VAI CON L'INVIO DELL'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\n";
$corpo .= "
____________________________________________________________ \n\nGrazie per aver utilizzato un MG Script - Buona giornata!";
//inizio l'invio dell'email
mail("$destinatario","$oggetto_email","$corpo", "From: $nome_mittente <$email_mittente>");header ("Location: $pagina_grazie"); } else { header ("Location: $pagina_error_condizioni"); } } else { header ("Location: $pagina_error_email"); } } else { header ("Location: $pagina_error_empty"); }Allora, il codice funziona, solo che vorrei inserire nel corpo della mail anche il contenuto delle variabili $rata, $N, $tot, $interessi...
Ho provato ad inserirli in mail () ma non ha funzionato... come posso fare? grazie
-
@terrasamba said:
vorrei inserire nel corpo della mail anche il contenuto delle variabili $rata, $N, $tot, $interessi...
Continui così:
[PHP]
$corpo .= "Rata: $rata"."\n\n";
$corpo .= "Interessi: $interessi"."\n\n";
[/PHP]
eccetera eccetera...
-
@tigrone said:
Continui così:
[php]
$corpo .= "Rata: $rata"."\n\n";
$corpo .= "Interessi: $interessi"."\n\n";
[/php]eccetera eccetera...
Grazie mille! funziona perfettamente!