Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 18
  1. #1
    Utente di HTML.it L'avatar di pariri
    Registrato dal
    Jul 2003
    Messaggi
    1,470

    Form in PHP. Piccolo problema

    Ciao a tutti,
    ho scaricato questo form da Saibal con una piccola modifica, ossia così com'è ritorna al mittente una e-mail di conferma. Fino qui tutto ok, ma la cosa che non capisco sarebbe questa che il mittente riceve la conferma però non con il nome del mio sito ma del server, così:
    "da: webserver@aruba.it a: mittente@suosito.it" e dovrebbe essere così:
    "da: info@miosito.it a: mittente@suosito.it.

    posto tutto il codice:

    <?php

    //email del destinatario del modulo
    $destinatario = "info@miosito.com";

    //nome mittente per la corretta intestazione del modulo
    $nome_mittente = "$nome";

    //email mittente per per la corretta intestazione del modulo
    $email_mittente = "$mail";

    //oggetto dell'email
    $oggetto_email = "form compilato da $nome";

    //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
    $campi_req = array("nome","oggetto");

    //controllo del campo email? valori possibili: "y" e "n"
    $obbligo_email = "y";

    //url della pagina di ringraziamento
    $pagina_grazie = "http://www.miosito.com/grazie.php";

    //url della pagina errore campi vuoti
    $pagina_error_empty = "http://www.miosito.com/errore.php";

    //url della pagina errore email
    $pagina_error_email = "http://www.miosito.com/errore.php";

    //url della pagina errore invio non autorizzato (mancanza di referer)
    $pagina_error_referer = "http://www.miosito.com/errore.php";

    //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";

    ########### CODICE VARIO ###########

    //variabili per rendere lo script compatibile anche con PHP 4.2 - copyright di Chris
    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");
    }
    ###################################
    //breve controllo
    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'])){

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

    $control_email++;

    }

    } else {

    $control_email = 0;

    }

    }

    ########### 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";

    $corpo .= "
    __________________________________________________ __________ \n

    ";

    //inizio l'invio dell'email
    mail("$destinatario","$oggetto_email","$corpo", "From: $nome_mittente <$email>");
    mail(
    // questo è l'indirizzo del cliente
    "$email",
    // questo è l'oggetto della e-mail che gli arriva
    "Grazie per aver mandato i tuoi dati",
    // questo è il testo del messaggio
    "Caro $nome, i tuoi dati sono stati inseriti nel nostro database.",
    // questo è da chi proviene
    "Sito Mio"
    //chiusura della funzione
    );

    header ("Location: $pagina_grazie");

    } else {

    header ("Location: $pagina_error_condizioni");

    }

    } else {

    header ("Location: $pagina_error_email");

    }

    } else {


    header ("Location: $pagina_error_empty");

    }

    ?>


    Grazie in anticipo.

    ____________________________

  2. #2
    manca

    "From: $nome_mittente <$email>");


    nella seconda funzione mail()

    e quindi vengono usati i dati di default del server
    w la topa

  3. #3
    Utente di HTML.it L'avatar di pariri
    Registrato dal
    Jul 2003
    Messaggi
    1,470
    Non cambia niente.
    ho fatto così:

    code:

    //inizio l'invio dell'email
    mail("$destinatario","$oggetto_email","$corpo", "From: $nome_mittente <$email>");
    mail(
    "$email",
    "Grazie per aver mandato i tuoi dati",
    "Caro $nome, i tuoi dati sono stati inseriti nel nostro database.",
    "Sito Bla Bla",
    "From: $nome_mittente <$email>"
    );

    Ti mando anche una img della email.

    Grazie____________

  4. #4
    Utente di HTML.it L'avatar di pariri
    Registrato dal
    Jul 2003
    Messaggi
    1,470
    oops!
    Ecco l'img.

  5. #5
    Utente di HTML.it L'avatar di pariri
    Registrato dal
    Jul 2003
    Messaggi
    1,470
    Img
    adesso si:


  6. #6
    $nome_mittente = "$nome";
    $email_mittente = "$mail";




    ma $nome e $mail dove li prendi?
    w la topa

  7. #7
    Utente di HTML.it L'avatar di pariri
    Registrato dal
    Jul 2003
    Messaggi
    1,470
    Scusami Saibal, sono alle primerissime arme con php.
    Questo form è tuo. Ho preso in pratica dal tuo forum,
    per questo non so dirti.

    Grazie.

  8. #8
    Utente di HTML.it L'avatar di pariri
    Registrato dal
    Jul 2003
    Messaggi
    1,470
    Up!

  9. #9
    quelle variabili vanno riempite con dei dati non con delle variabili
    w la topa

  10. #10
    Utente di HTML.it L'avatar di pariri
    Registrato dal
    Jul 2003
    Messaggi
    1,470
    Scusami Saibal, visto che sono all'inizio con php, mi potresti per cortesia dirmi che cosa devo fare, dove devo cambiare e come?

    Grazie della pazienzia!

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2024 vBulletin Solutions, Inc. All rights reserved.