Visualizzazione dei risultati da 1 a 2 su 2
  1. #1

    Script Php Form Universale

    Form Universale Funziona Con Tutti I Form Da Te Creati
    ciao raga o uno scrip php che raccogliie e invia tutti i dati inseriti da un qualsiasi form da voi creato problema non so come inserire tre allegati mi potete aiutare e 5 mesi che sto inpazzendo in compenso potete utilizzare lo scrip php gratis. grazie.

    Tengo a precisare che i codici presenti nelle pagine non possono essere modificati altrimenti il presente form non sarebbe piu universale per tutti i form che si crean.


    Mi postete aiutare e modificarlo mantenendo la graranzia dell universale.


    Pubblicate i vostri aiuti o mandate una mail grazie per l aiuto prezioso.




    PAGINA gc_formmail.php

    <?
    /**
    *
    * Vi suggerisco di inserire nei form, per i quali userete questo script, in fondo alla pagina la riga:
    * <? $act=1; include "gc_formmail.php"; ?>
    *
    **/


    // Non toccare NULLA in questo file

    include "config.php";

    $version = "1.2.1";

    if ($act == 1)
    {
    echo getCredits();

    return;
    }

    $key = array ();
    $val = array ();

    $output = "";

    $senderNames = array ($senderNames);

    foreach($_POST as $chiave=>$valore)
    {
    // <Input type=qualunque name=chiave value=valore>


    // verifico se il campo è obbligatorio. Verifico e tolgo il prefisso

    if (isRequired($chiave, $reqTag))
    {
    if (empty($valore))
    {
    $missedFields = true;
    break;
    }
    else
    {
    $chiave = eregi_replace ($reqTag, "", $chiave);
    }
    }


    array_push ($key, $chiave);
    array_push ($val, eregi_replace("\\'", "'", $valore));

    if (!empty($emailField))
    {
    if ($chiave == $emailField)
    {
    $emailMittente = $valore;
    }
    }

    if (!empty($subjectField))
    {
    if ($chiave == $subjectField)
    {
    $subject = $valore;
    }
    }

    if (!empty($senderNames))
    {
    for ($i = 0; $i < count ($senderNames); $i++)
    {
    if ($chiave == $senderNames[$i])
    {
    $nome .= $valore." ";
    }
    }
    }

    }


    if ($missedFields)
    {
    // Messaggio errore e esci

    echo "
    ".$erroreCampiMancanti."


    ".getHtmlOutput($key, $val)."


    ".getCredits();
    exit();
    }

    if (!empty($subject))
    {
    $oggetto .= " - ".$subject;
    }

    if ($html)
    {
    $output = getHtmlOutput ($key, $val);

    $intestazioni = "MIME-Version: 1.0\r\n";
    $intestazioni .= "Content-type: text/html; charset=iso-8859-1\r\n";
    }
    else
    {
    for ($i = 0; $i < count ($key); $i++)
    {
    $output .= $key[$i].": ".$val[$i]."\n";
    }

    $intestazioni = "";
    }

    if ( (!empty($emailMittente)) || (!empty($nome)) )
    {
    $intestazioni .= "From: ".$nome."<".$emailMittente."> \r\n";
    }
    else
    {
    $intestazioni .= "From: ".$mittente."\r\n";
    }

    if (!mail($destinatari, $oggetto, $output, $intestazioni))
    {
    echo "
    ".$messaggioErrore."


    ".getHtmlOutput($key, $val)."


    ".getCredits();

    if (strlen($paginaErrore) < 5)
    {
    exit ();
    }
    else
    {
    echo "<META HTTP-EQUIV=Refresh CONTENT=\"10; URL=".$paginaErrore."\">";
    }
    }

    echo "
    ".$messaggioConferma."


    ".getHtmlOutput($key, $val)."


    ".getCredits();

    if (strlen($paginaConferma) < 5)
    {
    exit ();
    }
    else
    {
    echo "<META HTTP-EQUIV=Refresh CONTENT=\"10; URL=".$paginaConferma."\">";
    }



    function isRequired ($varname, $reqTag)
    {
    if (eregi($reqTag, $varname))
    return true;
    else
    return false;
    }


    function getHtmlOutput ($k, $v)
    {
    global $stripsHtml;
    global $tagAllowed;



    $return = "<center><div style=\"width: 0; height: 0; text-align: center\">";

    $return .= "<fieldset style=\"font-family: Verdana; font-size: 0pt; color: #white; font-weight: bold; border: 0px double #white; background-color: #white\">";
    $return .= "<legend align=center></legend>";


    $return .= "<table border=0 cellpadding=3 style=\"border-collapse: collapse; font-family:Verdana; font-size:0pt; color:#white\" bordercolor=#white cellspacing=5 width=0>";
    $return .= "<colgroup span=1 style=\"text-align:right; font-weight: bold; background-color: #white\"></colgroup>";

    for ($i = 0; $i < count ($k); $i++)
    {
    $v[$i] = eregi_replace ("\n", "
    ", $v[$i]);

    if ($stripsHtml)
    {
    $v[$i] = strip_tags ($v[$i], $tagAllowed);
    }

    $return .= "<tr><td width=\"30%\">".$k[$i].": </td><td>".$v[$i]."</td></tr>";
    }

    $return .= "</table></fieldset></div></center>";

    return $return;
    }

    function getCredits ()
    {
    global $version;

    $return = "


    <center>

    </font>";

    return $return;
    }

    /*
    * To Do:
    * - Limite inserimento ogni n secondi o n richieste al minuto
    * - Messaggio di conferma al mittente. Più complicato, potrebbe essere hackerato e diventerebbe minaccia seria.
    */

    /*
    *
    * Changelog:
    *
    * 1.2.1 (5/6/06)
    * - "Required fields" feature added
    *
    * 1.2 (21/2/05)
    * - Configuration file
    * - Documentation
    * - Other few changes
    *
    * 1.12 (19/2/05)
    * - Removed backslash before char "'".
    * - In html output and mail, \n becomes

    * - Possibility to strips (all or some) html tags from html ouput
    * - Possibility to set some field names as Name and Email Address of mail received
    * - Possibility to set a field as subject after that set in "$oggetto"
    * - Button green/red to see updates
    *
    * 1.11 (18/2/05)
    * - Added Html Email Format
    */


    ?>


    PAGINA config.php


    <?
    /**
    **/


    /**
    * Nome e email del mittente che viene visualizzato nell'email ricevuta. Nella forma: "NOME VOSTRO SITO <vostramail@server.it>"
    **/

    $mittente = "oggetto mail <vostramail@server.it>";


    /**
    * Nomi e indirizzi email a cui verranno inviati i dati inseriti nel modulo
    * Se si vuole inviare a più di un destinatario, inserire tutti i destinatari nella stessa forma separandoli con una virgola
    * es. $destinatari = "Joe Black <>, Tim White <vostramail@server.it>";
    **/

    $destinatari = "Mario Rossi <vostramail@server.it>";


    /**
    * Oggetto che verrà visualizzato nell'email ricevuta
    **/

    $oggetto = "----DATI FORM ----";


    /**
    * Eventuale pagina a cui si sarà reindirizzati automaticamente dopo alcuni secondi dalla visualizzazione della pagina di conferma
    * Scrivere l'indirizzo della pagina tra le virgolette. Se non è indicata una pagina, non verrà visualizzata semplicemente il mess di conferma
    **/

    $paginaConferma = "";


    /**
    * Messaggio/frase (può contenere html) che verrà visualizzato in cima alla pagina di conferma
    **/


    /**
    * Eventuale pagina a cui si sarà reindirizzati automaticamente dopo alcuni secondi dalla visualizzazione della pagina di errore
    * Scrivere l'indirizzo della pagina tra le virgolette. Se non è indicata una pagina, non verrà visualizzata semplicemente il mess di conferma
    **/

    $paginaerrore = "";


    /**
    * Messaggio/frase (può contenere html) che verrà visualizzato in cima alla pagina di conferma
    **/

    $messaggioErrore = "<center><font color=red size=3 face=verdana>Si è verificato un errore
    Se il problema persiste contatta l'amministratore del sito!!
    </font><center>
    ";


    /**
    * Messaggio/frase (può contenere html) che verrà visualizzato in caso di errore per la mancanza di dati obbligatori richiesti
    **/

    $erroreCampiMancanti = "<center><font color=red size=3 face=verdana>Campi Mancanti!
    Devi inserire tutti i campi obbligatori
    Torna alla pagina precedente e compila tutti i campi richiesti
    </font><center>
    ";


    /**
    * Prefisso per identificare i CAMPI OBBLIGATORI. Puoi cambiare questo prefisso a tua scelta. Ogni campo che vuoi rendere obbligatorio deve avere questo prefisso (verrà poi eliminato automaticamente dal programma).
    * Es. Voglio che il campo "email" sia obbligatorio. Lo chiamo quindi "_rrr_email". <input type="text" name="_rrr_email"> . Il prefisso _rrr_ verrà eliminato automaticamente dal programma, quindi per tutte le altre configurazioni
    * qua sotto trattate il campo some se il prefisso non esista.
    **/

    $reqTag = "_rrr_";


    /**
    * Specifica il nome di un campo del form da trattare come indirizzo email del mittente. Ad es. se nel form ho un campo <input type=text name=indirizzoemail> potrò definire "indirizzoemail" come campo email qua sotto
    *
    **/

    $emailField = "email";


    /**
    * Specifica il nome di un campo del form da trattare come oggetto del mittente. Ad es. se nel form ho un campo <input type=hidden name=tipomodulo value=nuove_proposte> potrò definire "nuove_proposte" come campo subject qua sotto.
    * Il valore di questo campo sarà visualizzato nell'oggetto dell'email insieme all' "oggetto" specificato sopra. Se si vuole vedere come oggetto solo il valore di questo campo, cancellare il valore di $oggetto definito sopra
    **/

    $subjectField = "";


    /**
    * Specifica il nome di un campo o più campi del form da trattare come Nome del mittente.
    * Ad es. se nel form ho un campo <input type=text name=nome> e <input type=text name=cognome> potrò definire "nome" e "cognome" come campo mittente qua sotto.
    * Separare ogni campo con una virgola e ricordarsi di inserirlo tra virgolette
    **/

    $senderNames = "nome, cognome";


    /**
    * Se settato a 0, nella pagina di conferma mostra i dati inseriti. Se settato a zero stampa solo il messaggio di conferma senza far vedere ciò che si è inserito
    **/

    $mostraInputinConferma = 0;


    /**
    * Se settato a 1, le email vengono inviate graficamente in formato html, se settato a 0 in modalità di testo semplice
    **/

    $html = 1;


    /**
    * Se settato a 1, toglie tutti i tag html presenti negli input prima di visualizzarlo graficamente. E' possibile specificare quali tag permettere. Se a 0 permette tag html
    **/

    $stripsHtml = 1;


    /**
    * Specifica quali tag html sono permessi nel caso in cui il parametro di sopra sia settato a 1
    **/

    $tagAllowed = "[b][i]
    <u>";


    ?>



    __________________________________________________ ___________________________
    CREATE UN FORM SEMPLICE MA INSERITE NEL

    ACTION gc_formmail.php

    VI GARANTISCO CHE FUNZIONA CON UN QUALSIASI FORM DA VOI CREATO. PROVATE.

    VOI SE POTETE MODIFICATE IL CODICE CHE CONSENTA DI ALLEGARE 3 IMMAGINI .


    MI SERVE IL VOSTRO AIUTO SOLO PERCHE I DATI DEL FORM VENGONO INVIATI MA SE VI SONO ALLEGATI FILE NEL FORM STESSO NON VENGONO INVIATI ARRIVANO SOLO I MESSAGGI TESTUALI QUINDI CREDO CHE DEBBA ESSERE MIDIFICATO QUALCOSA NELLA PAGINA


    gc_formmail.php

    o nella pagina

    config.php

  2. #2
    Ti ho risposto nell'altro thread che hai aperto.
    <ALCIO />
    Per cortesia: no PVT Tecnici
    ******* LINKS *******
    SRL
    MetalWave

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 © 2025 vBulletin Solutions, Inc. All rights reserved.