Visualizzazione dei risultati da 1 a 8 su 8

Discussione: Problema mail php

  1. #1

    Problema mail php

    Ho questo script e funziona... però vorrei che inizialmente, dato che sono posti nella stessa pagina, non mi uscisse il messaggio "L'email non può essere inviata.
    Inserire tutti i campi richiesti." cioè quella della prima condizione...

    Premetto non voglio spostare lo script da quella pagina altrimenti i messaggi mi uscirebbero nell'altra pagina.

    Come fare?



    <form method="post" action=<?php ?>>
    Nome:
    <input class="input" name="name" type="text">


    Cognome:

    <input class="input" name="surname" type="text">


    Oggetto:
    <input class="input" name="subject" type="text">


    Messaggio:
    <textarea class="input" name="msg" cols="50" rows="10"></textarea>


    <input class="butt" type="submit" value="Invia"> <input class="butt" type="reset" value="Reset">
    </form>
    <?php
    $receiverMail = "matteocaprioli@hotmail.com";

    $name = ltrim(rtrim(strip_tags(stripslashes($_POST['name']))));
    $surname = ltrim(rtrim(strip_tags(stripslashes($_POST['surname']))));
    $subject = ltrim(rtrim(strip_tags(stripslashes($_POST['subject']))));
    $msg = ltrim(rtrim(strip_tags($_POST['msg'])));



    $msgformat = "Email inviata da: $name $surname\n\nQuesto è il testo della mail:\n$msg";


    if(empty($name) || empty($surname) || empty($subject) || empty($msg)) {
    echo "L'email non può essere inviata.
    Inserire tutti i campi richiesti.";
    }else{
    mail($receiverMail, $subject, $msgformat, "From: $name $surname");
    echo "L'email è stata inviata con successo!
    Sarete risposti il prima possibile.";
    }
    ?>


    Aspetto risposta...
    Thx

  2. #2
    up please

  3. #3
    Utente di HTML.it L'avatar di polinet
    Registrato dal
    Nov 2000
    Messaggi
    993
    dividi le 2 pagine
    invia i dati a una pagina PHP che invia la mail.
    ¿Hasta la pasta?

  4. #4
    però dopo i messaggi di invio o di errore mi uscirebbero nell'altra pagina io invece li voglio nella stassa pagina...

    Aspetto risposta

  5. #5
    up please ...

  6. #6
    Utente di HTML.it L'avatar di polinet
    Registrato dal
    Nov 2000
    Messaggi
    993
    prova cosi:

    <?
    if ($_SERVER['REQUEST_METHOD'] == 'GET')
    {
    ?>
    <form action="<?php echo $_SERVER['PHP_SELF'] ?>" method="POST">
    Nome:
    <input class="input" name="name" type="text">


    Cognome:

    <input class="input" name="surname" type="text">


    Oggetto:
    <input class="input" name="subject" type="text">


    Messaggio:
    <textarea class="input" name="msg" cols="50" rows="10"></textarea>


    <input class="butt" type="submit" value="Invia"> <input class="butt" type="reset" value="Reset">
    </form>
    <?
    }elseif ($_SERVER['REQUEST_METHOD'] == 'POST')
    {
    $receiverMail = "matteocaprioli@hotmail.com";
    $name = ltrim(rtrim(strip_tags(stripslashes($_POST['name']))));
    $surname = ltrim(rtrim(strip_tags(stripslashes($_POST['surname']))));
    $subject = ltrim(rtrim(strip_tags(stripslashes($_POST['subject']))));
    $msg = ltrim(rtrim(strip_tags($_POST['msg'])));
    $msgformat = "Email inviata da: $name $surname\n\nQuesto è il testo della mail:\n$msg";
    if(empty($name) || empty($surname) || empty($subject) || empty($msg)) {
    echo "L'email non può essere inviata.
    Inserire tutti i campi richiesti.";
    }else{
    mail($receiverMail, $subject, $msgformat, "From: $name $surname");
    echo "L'email è stata inviata con successo!
    Sarete risposti il prima possibile.";
    }
    }
    ?>

    facci sapere.
    ciao
    ¿Hasta la pasta?

  7. #7
    Grazie funziona alla perfezione...
    ma mi potresti spiegare il perchè?

  8. #8
    Utente di HTML.it L'avatar di polinet
    Registrato dal
    Nov 2000
    Messaggi
    993
    sono contento che funziona.
    comunque è una pagina autoelaborante,
    fino a che non passi nessun dato, lo script ti mostra il form, mentre quando invii i dati con POST lo script esegue quello che deve eseguire.......

    ¿Hasta la pasta?

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.