Visualizzazione dei risultati da 1 a 4 su 4

Discussione: form invio mail

  1. #1
    Utente di HTML.it L'avatar di GunMan
    Registrato dal
    Dec 2005
    Messaggi
    2,642

    form invio mail

    salve a tutti

    innanzitutto mi scuso se l'argomento è stato ampiamente trattato, ho letto molta documentazione ma ho un problema che non riesco a risolvere.

    ho, in una pagina web, il classico form per inviare mail, esso è molto semplice tuttavia non c'è verso alcuno di ricevere i messaggi inseriti all'indirizzo mail prefissato.

    questo è il codice del form:

    codice:
    <form method="post" action="send.php">
    
    Nome:
    <input name="name">
    
    Email:
    <input name="email" size="15">
    
    Messaggio:
    <textarea name="msg"></textarea>
    
    <input type="submit" value="Invia">
    </form>
    mentre questa è la pagina send.php

    Codice PHP:
    <?php

    $receiverMail 
    "mio.indirizzo@provider.it";

    $name ltrim(rtrim(strip_tags(stripslashes($_POST['name']))));
    $email ltrim(rtrim(strip_tags(stripslashes($_POST['email']))));
    $subject "EMAIL DAL TUO SITO!";
    $msg ltrim(rtrim(strip_tags(stripslashes($_POST['msg']))));

    $ip getenv("REMOTE_ADDR");
    $msgformat "From: $name ($ip)\nEmail: $email\n\n$msg";

    // VALIDATION
    if(empty($name) || empty($email) || empty($subject) || empty($msg)) {
    echo 
    "<h3><font color=red size=1 face=Verdana>Errore.</h3>

    Riprova, ricordati di Inserire Tutti i Campi Richiesti.
    [b]Clicca Nuovamente su Contattaci.[/b]</p>"
    ;
    }
    elseif(!
    ereg("^[_a-z0-9-]+(\.[_a-z0-9-]+)*@[a-z0-9-]+(\.[a-z0-9-]+)*(\.[a-z]{2,3})$"$email)) {
    echo 
    "<h3><font color=red size=1 face=Verdana>Errore.</h3>

    Riprova, si è verificato un Errore!
    [b]Clicca Nuovamente su Contattaci.[/b]</p>"
    ;
    }
    else {
    mail($receiverMail$subject$msgformat"From: $name <$email>");
    echo 
    "<h3><font size=1 color=black face=Verdana>Il Tuo Messaggio è Stato Inviato Correttamente.</h3>

    Grazie, ti Risponderemo al Più Presto.</p>"
    ; }
    ?>
    specifico inoltre che non ho errori all'atto dell'invio, quindi tutti i campi sono correttamente compilati, solo che non ricevo niente di niente.

    grazie a tutti coloro volessero aiutarmi

    Chaos A.D. Disorder unleashed.
    Starting to burn. Starting to lynch.
    Silence means death. Stand on your feet.
    Inner fear. Your worst enemy.

    Refuse / Resist

  2. #2

    controlla il provider

    forse non hai controllato se tu non puoi ricevere email.
    guarda magari la tua mailbox è piena.
    I'm the solution
    http://www.mishacattaneo.ch/
    I'm fifteen. Scusate le domande ripetitive.

  3. #3
    Utente di HTML.it L'avatar di GunMan
    Registrato dal
    Dec 2005
    Messaggi
    2,642
    ciao mcthepirate e innanzitutto grazie per la prontissima risposta

    ho controllato e ricontrollato, usando tra l'altro di volta in volta anche indirizzi mail differenti, proprio per scongiurare il pericolo che le prove fossero falsate da provider incasinati o mail box piene.

    non credo che sia questo il punto, onestamente sono proprio agli inizi inizi con php, ovviamente mi sono anche assicurato che l'hosting nel quale è ospitato il sito supportasse php ed infatti non ci sono problemi...

    onestamente non so che altro poter ricontrollare :master:

    Chaos A.D. Disorder unleashed.
    Starting to burn. Starting to lynch.
    Silence means death. Stand on your feet.
    Inner fear. Your worst enemy.

    Refuse / Resist

  4. #4
    Utente di HTML.it L'avatar di GunMan
    Registrato dal
    Dec 2005
    Messaggi
    2,642
    ho provato diverse soluzioni ma il problema rimane il medesimo...

    questo è il form nella pagina .html
    codice:
    <form action="sendmail.php" method="post">
    <fieldset>
    <legend>Form mail</legend>
    
    <label for="nome">Nome e cognome[Alt+n]:</label>
    <input type="text" id="nome" name="Nome" size="30" value="" tabindex="1" accesskey="n"/>
    
    
    
    <label for="indirizzo">Indirizzo mail[Alt+i]: </label>
    <input type="text" id="indirizzo" name="Indirizzo" size="30" value="" tabindex="2" accesskey="i"/>
    
    
    
    <label for="oggetto">Oggetto[Alt+o]: </label>
    <input type="text" id="oggetto" name="Oggetto" size="50" value="" tabindex="3" accesskey="o"/>
    
    
    
    <label for="messaggio">Messaggio[Alt+m]: </label>
    <textarea rows="6" id="messaggio" name="Messaggio" cols="40"  tabindex="4" accesskey="m">Inserisci il messaggio...</textarea>
    
    
    
    <input type="submit" value="Invia"/>
    <input type="reset" value="Cancella"/>
    
    </fieldset>
    </form>
    mentre il seguente è la pagina sendmail.php

    Codice PHP:
    <?php

    // L'INDIRIZZO DEL DESTINATARIO DELLA MAIL
    $to "mail.destinazione@provider.it";

    // IL SOGGETTO DELLA MAIL
    $subject "Modulo proveniente dal sito";

    // COSTRUIAMO IL CORPO DEL MESSAGGIO
    $body "Contenuto del modulo:\n\n";
    $body .= "Nome: " trim(stripslashes($_POST["Nome"])) . "\n";
    $body .= "Indirizzo mail: " trim(stripslashes($_POST["Indirizzo"])) . "\n";
    $body .= "Oggetto: " trim(stripslashes($_POST["Oggetto"])) . "\n";
    $body .= "Messaggio: " trim(stripslashes($_POST["Messaggio"])) . "\n";

    // INTESTAZIONI SUPPLEMENTARI
    $headers "From: Modulo utenti<modulo@sito.it>";


    // INVIO DELLA MAIL
    if(ereg("^[^@ ]+@[^@ ]+\.[^@ \.]+$"$_POST['Indirizzo'])){
        if(@
    mail($to$subject$body$headers)) { // SE L'INOLTRO E' ANDATO A BUON FINE...

            
    $risposta "La mail è stata inoltrata con successo.";

        } else {
    // ALTRIMENTI...

        
    $risposta "Si sono verificati dei problemi nell'invio della mail.";

        }

    } else {
    // ALTRIMENTI...

    $risposta "Assicurati di aver compilato correttamente il campo con l'indirizzo mail";
    }
    ?>
    <?php 
    echo $risposta?>
    l'esito dell'operazione è positiva, non ho problemi nella compilazione dei campi etc., solo che non arriva nessuna mail all'indirizzo specificato, c'è qualche variabile che ho omesso che può causare tutto ciò?

    a questo punto specifico che il provider è libero ma non credo che questo influisca o meglio non dovrebbe... non so più dove sbattere la testa

    grazie ancora per le eventuali risposte

    Chaos A.D. Disorder unleashed.
    Starting to burn. Starting to lynch.
    Silence means death. Stand on your feet.
    Inner fear. Your worst enemy.

    Refuse / Resist

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.