Visualizzazione risultati 1 fino 7 di 7

Discussione: form di invio email

  1. #1
    Guest

    Unhappy form di invio email

    Ciao, vorrei inserire nella pagina la possibilità di inviarmi un'email.

    Vorrei con un pulsante richiamare la funzione php.
    Ho fatto così ma non sembra funzionare... in particolare l'echo finale non visualizza niente ma reindirizza il browser all'url "email inviata" ... cosa che non capisco?!

    Codice:
    <?php
    function invia_email()
    {
    ...
    	mail("$emaildest", $subject, $messaggio, $headers);
    
    	echo "email inviata!!";
    }
    ?>
    
    
    <html>
      ...
        <form name="form1" method="post" action="<?php invia_email(); ?>">
      ...
        <input type="submit" name="Submit" value="Invia">
    
        </form>
      ...
    </html>

  2. #2
    Guest

    Predefinito

    Le funzioni che crei in php, non sono come quelle che crei in javascript!
    Con php non puoi fare cose del genere, a meno che non utilizzi ajax.
    Ti conviene puntare l'action in un pagina dove verrà inviata l'email.

    Saluti!

  3. #3
    L'avatar di alemoppo
    alemoppo non è connesso Staff AV
    Data registrazione
    24-08-2008
    Residenza
    PU / BO
    Messaggi
    22,422

    Predefinito

    Codice PHP:
    <?php
    if(isset($_POST['testo']))
    invia_email();
    function
    invia_email()
    {
    mail("$emaildest", $subject, $_POST['testo'], $headers);

    echo
    "email inviata!!";
    }
    ?>


    <html>
    ...
    <form name="form1" method="post" action="">
    ...
    <input type="test" name="testo" value="Invia">
    <input type="submit" name="Submit" value="Invia">

    </form>
    ...
    </html>
    no?

    Ciao!

    EDIT: in effetti è circa come detto da nokiagames
    Ultima modifica di alemoppo : 28-07-2009 alle ore 15.41.38

  4. #4
    Guest

    Predefinito

    Io intendo dire che le funzioni che crei in php, non possono essere richiamate con un linguaggio lato client ma soltanto con un php stesso.

    Specialmente (non possono essere richiamate) negli eventi di javascript, al limite se si vuole settare qualche attributo.
    Ultima modifica di nokiagames : 28-07-2009 alle ore 15.48.35

  5. #5
    Guest

    Predefinito differenza tra ' e "

    Grazie, con due file separati sono riuscito.

    colgo l'occasione per un'altra domanda... qual'è la differenza tra racchiudere i testi tra "" invece di '', ad esempio:

    mail ("pippo" ....

    e

    mail ('pippo' ...

    c'è differenza ???

  6. #6
    Guest

    Predefinito

    Codice PHP:
    <?php
    $var
    = "prova";

    echo
    "Questa è una $var<br />"; // Stampa Questa è una prova
    echo 'Questa è una $var<br />'; // Stampa Questa è una $var
    ?>
    Negli apici i caratteri come $ e \ non vengono interpretati, mentre con le virgolette si.

    Se prendi in esempio un pezzo del tuo codice:
    Codice PHP:
    mail("$emaildest", $subject, $_POST['testo'], $headers);
    Li si possono anche evitare le virgolette, ma se invece delle virgolette avessi messo gli apici, php avrebbe mandato un email a $emaildest e non al suo valore (es email @ dom.ext).
    Ultima modifica di nokiagames : 28-07-2009 alle ore 16.02.25

  7. #7
    Guest

    Predefinito

    Te ne faccio uno semplice

    Codice PHP:
    <?php
    $destinazione
    = 'destinazione@ciao.it'; //modificare con l'email di destinazione

    $n = $_POST['name'];

    $e = $_POST['email'];

    $m = $_POST['message'];

    if(empty(
    $n) || empty($e) || empty($m)) {

    echo
    'Hai lasciato dei campi vuoti!';

    } else {
    mail("$destinazione","Nuovo messaggio dal sito","Nuovo messaggio da: $n Email: $e Messaggio: $m","From:$destinazione");

    echo
    'Messaggio inviato!!';
    }
    ?>


    <html>

    <form name="form1" method="post" action="">
    Nome:<br />
    <input type="text" name="name" value="Invia"><br /><br />
    Email:<br />
    <input type="text" name="email" value="Invia"><br /><br />
    Nome:<br />
    <input type="text" name="message" value="Invia"><br /><br />

    <input type="submit" name="Submit" value="Invia">

    </form>
    ...
    </html>
    Ultima modifica di edo98 : 30-07-2009 alle ore 11.08.46

Regole di scrittura

  • Non puoi creare nuove discussioni
  • Non puoi rispondere ai messaggi
  • Non puoi inserire allegati.
  • Non puoi modificare i tuoi messaggi
  •